JDK8新特性

class A{
int n = 10;
public void m(){
int a = 1;//在JDK1.8中,默认添加final---->final int a = 1; 所以在15行可以访问
class B{
public void method(){
System.out.println(n);
System.out.println(a);
}
}
// a++;//error 因为第15行已经把a当成是常量使用了,所以在这里再写a++,在没有写final int a = 1;时,第15行会报错
}
}

class C{
int n = 10;
public void m(){
final int a = 1;//主动添加final后
class B{
public void method(){
System.out.println(n);
System.out.println(a);
}
}
// a++;//error 因为第15行a是常量,所以在这里再写a++,会报错,因为a的值无法改变
}
}

 

posted @ 2018-10-07 11:24  ChenPS  阅读(279)  评论(0编辑  收藏  举报