在 Java 语言 中,一个内部类除了可以通过外部类进行访问,也可以直接在其他的类中对其进行访问。
外部类.内部类 内部类对象 = 外部类实例.new 内部类();
参数 | 描述 |
---|---|
外部类 | 外部类的名称 |
内部类 | 内部类的名称 |
外部类实例 | 在该类里面定义了外部类的对象,必须要有外部类对象,不然不能访问内部类 |
Java 语言中,想要在其他类中使用内部类,需要先定义一个外部类的对象,然后通过外部类对象进行访问内部类。
我们定义一个外部类并且在外部类里面定义了一个内部类,内部类的访问权限是 protected 类型的。
package com.haicoder.net.innerclass;
public class OuterClass {
private String desc = "嗨客网,测试内部类";
protected class InnerClass {
public void print() {
System.out.println(desc);
}
}
}
内部类方法调用
package com.haicoder.net.innerclass;
public class InnerClassTest {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)");
OuterClass outerClass = new OuterClass();
OuterClass.InnerClass innerClass = outerClass.new InnerClass();
innerClass.print();
}
}
运行结果如下:
我们按照语法,对内部类进行了访问。内部类里面访问了外部类的 desc 属性。
在其它类中想要访问类的内部类,需要先定义该类的外部类对象,然后方可创建内部类对象。