关于内部类有点疑惑,请大家帮忙解答一下,谢谢把内部类放到外部类的外面后,做如下改动:
class Outer
{
int outer_i = 100;

void test()
{
Inner in = new Inner(this);
in.display();
}

public static void main(String [] args)
{
Outer outer = new Outer();
outer.test();
}
}
 
class Inner
{
Outer outer;
public Inner(Outer outer)
{
this.outer = outer;
}

void display()
{
System.out.println("outer_i = "+ outer.outer_i);
}
}可是我用另一种方式也可以实现,而且比上面的更简单
class Outer
{
int outer_i = 100;

void test()
{
Inner in = new Inner();
in.display();
}

public static void main(String [] args)
{
Outer outer = new Outer();
outer.test();
}
}
 
class Inner
{
Outer outer = new Outer();

void display()
{
System.out.println("outer_i = "+ outer.outer_i);
}
}不知道这之间有什么区别,麻烦大家给我指教,谢谢