内部类:将一个类定义在另一个类的里面,其中里面那个类就称为内部类(内置类,嵌套类)。
内部类的访问规则:
1,内部类可以直接访问外部类中的成员,包括私有。
2,外部类要访问内部类,必须建立内部类对象。
当内部类定义在成员位置上时:
1.可以被private static成员修饰符修饰。
2.被static修饰的内部类只能访问外部类中的静态成员。
new Outer.Inner().founction(); //从类的外部访问静态内部类的非静态成员
Outer.Inner.founction();//从类的外部访问静态内部类的静态成员
当内部类定义在局部位置上时:
1.也可以直接访问外部类中的成员。
2.同时可以访问所在局部中的局部变量,但必须是被final修饰的。
匿名内部类:就是内部类的简化写法。
格式为:
new 外部类名或者接口名(){覆盖类或者接口中的代码, (也可以自定义内容)},它需要继承一个外部的类或是实现接口。
|
|