局部内部类:
A:可以直接访问外部类的成员
B:在局部位置可以创建内部类对象,通过对象调用内部类方法,来使用局部内部类的功能
面试题:局部内部类访问局部变量的注意事项?
a:局部内部类访问局部变量必须用final修饰
b:为什么要用final修饰呢?
因为局部变量是随着方法的调用而调用,随着方法的调用完毕而消失。
而堆内存的内容是随着对象的消失而消失,但是对象的消失不是马上消失的,
这样的话, 如果不用final修饰使得局部变量成为一个常量的话,
在方法里,变量消失了,而堆内存里变量还没有马上消失,这样就会矛盾,
所以加final。
|
|