内部类:将一个类的定义放在一个类的内部,这个类就叫做内部类。
内部类特性:
1、内部类只能通过外部类来使用
2、在外部类的方法中使用内部类跟使用一般的类没有特殊的区别;
3、其他外部类访问某个内部类遵循访问控制权限;
4、内部类可以自由的访问外部类的属性、方法;
5、如果要外部类中访问内部类成员需要通过内部类对象去操作;
6、不能在静态内部类中访问外部类的非静态成员(属性、方法)。
获得外部类的引用(即获取外部内对象):return Outer.this
创建内部类方式:
-
创建普通内部类
Outer.Inner inner1 = new OuterBase().new Inner();
Outer.Inner inner2 = outer.new Inner(); -
创建嵌套内部类(静态内部类)
1、创建静态内部类不需要外部类对象;
Inner inner3 = new OuterBase.Inner();
待补充......