现在的位置: 首页 > 综合 > 正文

外部类 调用内部类

2013年08月23日 ⁄ 综合 ⁄ 共 586字 ⁄ 字号 评论关闭

    在外部类以外的地方来定义内部类(包括静态和非静态两种)变量的语法格式如下:
OuterClass.InnerClass varName
    从上面的语法可以看出:在外部类以外的地方使用内部类时,内部类完整的类名应该

OuterClass.InnerClass。当然如果外部类有包名,则还应该增加包名前缀。
    因为非静态内部类的对象必须寄存在外部类的对象里,因此创建非静态内部类对象之前,必须先

创建其外部类的对象。在外部类以为的地方创建非静态内部类实例的语法如下:
OutInstance.new InnerConstructor().
    从上面语法格式可看出,在外部类以外的地方创建非静态内部类实例必须使用外部类实例和new来

调用非静态内部类的构造器。下面程序师范了如何在外部类以外的地方创建非静态内部类的对象,并

把它赋给非静态内部类类型的变量。

class Out{
 //定义一个内部类,不使用访问控制符,即同一个包中其它类可访问该内部类
 class In{
  public In(String msg){
   System.out.println(msg);
  }
 }
}
public class CreateInnerInstance{
 public static void main(String[] args){
  Out.In in = new Out().new In("测试信息");
 }
}

抱歉!评论已关闭.