语笑嫣然 发表于 2015-4-4 11:28

局部内部类是否可以访问非final变量?

局部内部类是否可以访问非final变量?

uperの小鬼 发表于 2015-4-4 11:28

答案:不能访问局部的,可以访问成员变量(全局的)。
class Out
{
private String name = “out.name”;
void print()
{
final String work = “out.local.work”;//若不是final的则不能被Animal 使用.
int age=10;
class Animal
//定义一个局部内部类.只能在print()方法中使用.
//局部类中不能使用外部的非final的局部变量.全局的可以.
{
public void eat()
{
System.out.println(work);//ok
//age=20;error not final
System.out.println(name);//ok.
}
}
Animal local = new Animal();
local.eat();
}
}
页: [1]
查看完整版本: 局部内部类是否可以访问非final变量?