下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

java语言中如何从内部类继承

作者:课课家教育     来源: http://www.kokojia.com点击数:765发布时间: 2016-02-20 09:12:57

标签: java的特殊语法java构建器java封装类

大神带你学编程,欢迎选课

  由于内部类构建器必须同封装类对象的一个句柄联系到一起,所以从一个内部类继承的时候,情况会稍微变得有些复杂。这儿的问题是封装类的“秘密”句柄必须获得初始化,而且在衍生类中不再有一个默认的对象可以连接。解决这个问题的办法是采用一种特殊的语法,明确建立这种关联:

java语言中如何从内部类继承_java的特殊语法_java构建器_课课家

  //: 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();

  它提供了必要的句柄,以便程序正确编译。

赞(0)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程