抽象类的内部类

xiaoxiao2021-02-27  455

抽象类的内部类 由于抽象类是不能被实例化的,所以静态内部类可以通过new 外部类.内部类()来创建内部类的实例。而非静态的内部类则无法被实例化。

public abstract class Demo { public abstract void demo(); static class A { public void a(){ System.out.println("a"); } } class B { public void b(){ System.out.println("b"); } } } class F { public static void main(String[] args) { Demo.A a = new Demo.A(); a.a(); // Demo.B b = new Demo.B(); // Demo.B b = new Demo().new B(); } }

内部抽象类 普通内部类需要先实例化外部类,然后在实例化内部类。抽象内部类也是通过此方法实现,只是需要在实例化的时候重写抽象方法。

class C { static abstract class D { public abstract void demoD(); } class E { public void e(){ System.out.println("e"); } } } class F { public static void main(String[] args) { C.D d = new C.D() { @Override public void demoD() { // TODO Auto-generated method stub } }; C.E e = new C().new E(); e.e(); } }
转载请注明原文地址: https://www.6miu.com/read-1403.html

最新回复(0)