发布网友 发布时间:2022-04-23 06:39
共3个回答
热心网友 时间:2022-06-16 18:54
public class Outer {
int x=3;
void show(){
int y=4;
class Inner{
void function(){
// 报错 内部类定义在局部 不能访问局部变量 除非 这个成员用final
//,x则不报错
System.out.println(y);
}
}
new Inner().function(); // 外部类访问内部类 必须建立内部类对象
}
public static void main(String args[]){
new Outer().show();
}
}
追问嗯 我问一下 我在Eclipse运行这个代码 它会报错 而我在EditPlus中运行这个代码 他却能够走起来 运行结果就是我截的那个图 你能告诉我原因不?
热心网友 时间:2022-06-16 18:55
jdk1.7内部类定义在局部时,不可以访问它所在的局部中的变量,只能访问被final修饰的局部变量,但是jdk1.8可以。
热心网友 时间:2022-06-16 18:55
这就是内部类之间的访问了!