十四、内部类
1.标准内部类:直接在大类中定义,内部类的方法可以获取外部类的私有属性。
2. 静态内部类:直接在大类中定义,并在class之前加上static关键字
3. 成员内部类:在方法中定义
3. 匿名内部类:new对象,不把示例保存到变量中
public class Outer { private int i1 = 1; private static int i2 = 2; void out(){ System.out.println("这是外部类的方法"); } //标准内部类 class Inner1{ void in(){ //可以获取外部类的私有属性 System.out.println(i1); System.out.println("这是内部类的方法"); } } //静态内部类 static class Inner2{ void in(){ System.out.println(i2); System.out.println("这是内部类的方法"); } } //局部内部类 public void run(){ class Inner3{ void in(){ System.out.println(i2); System.out.println("这是内部类的方法"); } } } //测试 public static void main(String[] args) { Outer outer = new Outer(); Outer.Inner1 inner1 = outer.new Inner1(); outer.out(); inner1.in(); //匿名内部类 new Test().run(); } } class Test{ void run(){ System.out.println("run"); } }