从内部类担任
当前位置:以往代写 > JAVA 教程 >从内部类担任
2019-06-14

从内部类担任

从内部类担任

由于内部类构建器必需同封装类工具的一个句柄接洽到一起,所以从一个内部类担任的时候,环境会稍微变得有些巨大。这儿的问题是封装类的“奥秘”句柄必需得到初始化,并且在衍生类中不再有一个默认的工具可以毗连。办理这个问题的步伐是回收一种非凡的语法,明晰成立这种关联:
 

//: InheritInner.java
// Inheriting an inner class

class WithInner {
  class Inner {}
}

public class InheritInner 
    extends WithInner.Inner {
  //! InheritInner() {} // Won't compile
  InheritInner(WithInner wi) {
    wi.super();
  }
  public static void main(String[] args) {
    WithInner wi = new WithInner();
    InheritInner ii = new InheritInner(wi);
  }
} ///:~

从中可以看到,InheritInner只对内部类举办了扩展,没有扩展外部类。但在需要建设一个构建器的时候,默认工具已经没有意义,我们不能只是通报封装工具的一个句柄。另外,必需在构建器中回收下述语法:
enclosingClassHandle.super();
它提供了须要的句柄,以便措施正确编译。

    关键字:

在线提交作业