62,614
社区成员
发帖
与我相关
我的任务
分享
void test() {
String name = "test";
class inner {
String innername;
public inner (String name) {
this.innername = name;
}
public void innertest() {
System.out.println(innername); //内部类的方法使用属性
}
};
inner i = new inner(name);
inner.innertest();
}
//如果局部变量不需要传出外部类,只是需要使用它的指,
//那么可以在内部类定一个属性,然后内部类使用该属性就可以了,如
void test() {
final String name = "test";
class inner {
String innername;
{innername=name;} //定一个属性
public void innertest() {
System.out.println(innername); //内部类的方法使用属性
}
};
inner i = new inner();
inner.innertest();
}
//如果需要内部类修改局部变量,并且能传到外部类,那么
//因为final只是不能改变它的指向,但是可以改变它的属性,所以你可以用数组来代替,比如
void test() {
final String[] name = {"test"};
class inner {
public void innertest() {
name[0] = "innertest";
}
};
inner i = new inner();
i.innertest();
System.out.println(name[0]);
}