在java中,怎么实例化内部类??

Python014

在java中,怎么实例化内部类??,第1张

部类实例化方式如下例子所示:

public class Animal {

class Head{

}

}

测试如何实例化内部类:

public class TestInstanceInnerClass {

public TestInstanceInnerClass() {

Animal animal=new Animal()//首先实例化外部类

Head head=animal.new Head()//把内部类当成一个成员变量进行实例化

}

}

假设外部类叫Out,内部类叫In,那么我们可以使用Out.In in = new Out().new In()来实例化内部类的对象,具体示例代码如下:

class Out {

private int age = 12

class In {

private int age = 13

public void print() {

int age = 14

System.out.println("局部变量:" + age)

System.out.println("内部类变量:" + this.age)

System.out.println("外部类变量:" + Out.this.age)

}

}

}

public class Demo {

public static void main(String[] args) {

Out.In in = new Out().new In()

in.print()

}

}

要想使用new

生成一个

内部类

的实例,需要先指向一个外部类的实例,也就是先生成外部类的实例,因为内部类可以调用外部类的人员成员,当没有外部类实例的时候也就没有这些成员的内存空间,内部类在实例化的时候,调用外部类的成员就会出错,所以需要使用外部类的实例

+

+

new

的方式实例化一个新的内部类。