java之内部类

来源:互联网 发布:python 召回率和准确率 编辑:程序博客网 时间:2024/05/02 18:31

java的内部类包括以下几种:

1.成员内部类 2.局部内部类 3.匿名内部类 4.静态内部类(P78)

成员内部类:

 * 成员内部类可拥有自己的成员变量与方法,也可是独立的类;
 * class 外部类名{  (public/private/protected) class 内部类名{}。。。。。。。。}
 * 允许内部类访问外部类的private方法


(书籍)

1)成员内部类和 成员变量一样,属于类的全局成员

2)例:public class Sample{

public int id;

class Inner{

}

}

上例中,外部类Sample用public修饰,所以内部类Inner不可使用public修饰符(因为:公共类的名称必须与类文件(java类文件的名字)同名,所以每个java文件中只允许存在一个public公共类)

3)使用方式:

Sample sample = new Sample()

sample.Inner inner = sample.new Inner();


局部内部类:

1)局部内部类,在方法内定义,只在方法内部有效

2)格式:

class Sample{

  public void sell(){

      class Apple{

       }

     }

}


静态内部类:

1)不能从静态内部类的对象中访问非静态外部类的对象

2) 例子

public class OuterClass{

     sattic class InnerClass{

     }

}

3)静态内部类可以在不创建外部类的情况下直接使用

匿名内部类:

1)匿名类就是没有名称的内部类

2)经常用于Swing程序设计中的事件监听处理

3)匿名类经常用来创建接口的唯一实现类,或者创建某个类的唯一子类

0 0
原创粉丝点击