内部类
内部类可以调用外部类的变量
public class Outer { int a = 10; private class Inner { public void show() { System.out.println(a); } } public void method(){ Inner i = new Inner(); i.method(); } }
测试类调用private内部类需要通过外部类创建方法,间接调用
public class InnerDemo { public static void main(String[] args) { Outer o = new Outer(); o.method(); } }
局部内部类,需要在method方法中创建inner的对象,才能从外部调用
public class Outer { private int a = 10; public void method() { class Inner { public void show() { System.out.println(a); } } Inner i = new Inner(); i.show(); } }
匿名内部类
new inner(){...}整体是一个对象
或