/*
内部类:
1.内部类定义
2.内部类的三种格式:
1.内部类是非静态修饰,内部类方法是非静态修饰 外部类名.内部类名 变量名 = new 外部类对象. new 内部类对象();
变量名.内部类方法();
内部类是非静态修饰,内部类方法是静态修饰(从内存方向考虑生命周期)
外部类静态修饰,内部类方法是静态修饰:外部类.内部类.内部类方法
内部类时静态修饰,内部类方法时非静态修饰:外部类名。内部类名 变量 = new 外部类名.内部类对象;变量 .内部类方法();*/
class Outer{int x = 1;class inter{int x = 2;public void inter(){int x = 3;System.out.println(x);}}
}
public class InterJiekou {public static void main(String[] ar){Outer o = new Outer();System.out.println(o.x);Outer.inter i = new Outer().new inter();System.out.println(i.x);i.inter();}
}
interface MyInter{public abstract void inter();
}
class Outer{//Inner类,使用接口实现类,利用多态调用private class Inner implements MyInter{public void inter(){System.out.println("内部类方法");}}public MyInter getInner(){return new Inner();}
}
public class InterJiekou {public static void main(String[] ar){Outer o = new Outer();MyInter I = o.getInner();I.inter();}
}