标题: 内部类的问题 [打印本页] 作者: 谭荣强 时间: 2014-4-13 19:22 标题: 内部类的问题 想在主函数内调用 function() ,看了半天觉得根本就没法调用。是不是啊?
class outer
{
int x = 3;
void method(final int y)
{
final int x=4;
class Inner
{
void function()
{
System.out.println(outer.this.x );
}
}
}
}
class day0904
{
public static void main(String[] args)
{
outer ou = new outer();
ou.method(5);
ou.method(6);
}
} 作者: ilvsoft 时间: 2014-4-13 19:37 标题: , 本帖最后由 ilvsoft 于 2014-4-13 20:16 编辑
内部类可以直接访问外部类成员的,吧outer.this.x 直接写成x多好,这个时候打印出的4,而如果不改则打印出的是3作者: 你为谁归来 时间: 2014-4-13 19:49
class outer
{
int x = 3;
void method(final int y)
{
final int x=4;
class Inner
{
void function()
{
System.out.println(outer.this.x );
System.out.println(x );
}
}
Inner inner = new Inner();
inner.function();
}
}
class day0904
{
public static void main(String[] args)
{
outer ou = new outer();
ou.method(5);
ou.method(6);