内部类和内部接口

来源:互联网 发布:js 什么时候使用链表 编辑:程序博客网 时间:2024/06/01 09:02
package 接口;import 接口.A.AAA.BBB;import 接口.A.AAA.BBB.CCC;public class A {    public static void main(String[] args) {        A A = new A();              //实例化A的对象为AAA的外层访问实例        AAA AAA = A.new AAA();      //实例化AAA的对象为BBB的外层访问实例        BBB BBB = new A().new AAA().new BBB();//实例化BBB的对象为CCC的外层访问实例        CCC CCC = new A().new AAA().new BBB().new CCC();//通过外层访问实例BBB访问内部成员CCC并将其实例化         AAA.X();        BBB.Y();        CCC.Z();        X BB = AAA.new BBB();        X.Y BA = AAA.new BBB();        X CA = new A().new AAA().new BBB().new CCC();        X.Y CB = new A().new AAA().new BBB().new CCC();        X.Y.Z CC = new A().new AAA().new BBB().new CCC();    }    public class AAA implements X {        @Override        public void X() {            System.out.println("x");        }        public class BBB implements Y {            @Override            public void X() {                System.out.println("x");            }            @Override            public void Y() {                System.out.println("y");            }            public class CCC implements Z {                @Override                public void Y() {                    System.out.println("y");                }                @Override                public void X() {                    System.out.println("x");                }                @Override                public void Z() {                    System.out.println("z");                }            }        }    }}interface X {    void X();    interface Y extends X {        void Y();        interface Z extends Y {            void Z();        }    }}

内外之分

这里写图片描述
这里写图片描述
这里写图片描述