匿名,局部内部类的方法内形参和局部变量为什么要是final修饰

  final  对于 匿名内部类,局部内部类 这个问题老生常谈。就是压根用不着讨论闭包问题,有些人故弄玄虚,java这语言若是谈闭包在js面前就是弟弟啊!java那闭包几乎等于没有。

 其实java和js一样只有传值引用(方法形参对象也是传对象地址值然后copy一个),压根就不能传对象引用,其实并不是加了final就怎样,而是个强迫症优先提示罢了。JDK到了现在,你不加也编译也给过的。

 强调一点,并不是加了final导致JVM做了什么,JVM啥都没做,只是让你知道Java不存在强闭包,final是限制你不让你犯错思考而已。

你可能感兴趣的:(匿名,局部内部类的方法内形参和局部变量为什么要是final修饰)