认识内部类的思路:
1.什么是内部类
2.为什么会设计出内部类,他解决了什么问题,有什么好处
3.内部类的分类
4.内部类的方法
1.在JAVA中,一个类的内部可以定义新的类,所定义的类就是内部类,包含内部类的类叫做外部类。
外部类只能是public 默认级别,内部类可以任何访问级别。
2.为什么设计内部类
1.是GUI里的注册监听事件都是靠内部类实现的;
2.用内部类可以真正的实现多重继承;
3.内部类配合设计模式,功能强大,实现了代码隐藏。
3.
成员内部类
局部内部类
实例内部类
静态内部类
匿名内部类
实例内部类
成员内部类
内部类 静态内部类
局部内部类
4 成员内部类
实例内部类:
不能定义静态的东西。
实例的创建
创建时必须存在外部类的实例。
变量的调用
内部类可以调用外部类的所有成员。
内部类和外部类同名成员 在内部类中 this.名称 ------内部类同名成员
外部类.this.名称 ------外部类中的同名成员
静态内部类:
用static修饰的内部类
直接访问外部类中静态成员,也可以通过外部类实例来访问外部类实例成员。
访问内部类静态成员时候可以直接 外部类名.内部类名访问
局部内部类
只限于当前类中的方法中定义。类中不能被private,public,protected修饰。不能包含静态成员, 访问所在方法中以final修饰的成员。
匿名内部类
在类中有一种特殊的内部类,没有类名 。程序运行过程中只被调用一次就消亡。
匿名内部类代码简洁。
匿名内部类没有构造方法,只能创建一次实例。 局部内部类可以有多个构造方法,能够多次创建实例。
参考:
1.http://zhidao.baidu.com/question/421415714.html
2.内部资料