为什么匿名内部类和局部内部类只能访问final变量 我来答 1个回答 #热议# 为什么有人显老,有人显年轻? 紫微微忽动听3104 2017-09-27 · TA获得超过110个赞 知道小有建树答主 回答量:567 采纳率:33% 帮助的人:426万 我也去答题访问个人页 关注 展开全部 是变量的作用域的问题,因为匿名内部类是出现在一个方法的内部的,如果它要访问这个方法的参数或者方法中定义的变量,则这些参数和变量必须被修饰为final。因为虽然匿名内部类在方法的内部,但实际编译的时候,内部类编译成Outer.Inner,这说明内部类所处的位置和外部类中的方法处在同一个等级上,外部类中的方法中的变量或参数只是方法的局部变量,这些变量或参数的作用域只在这个方法内部有效。 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询 其他类似问题 2017-09-27 Java内部类引用外部类中的局部变量为何必须是final问题解析 25 2017-11-22 为什么匿名内部类方法参数要使用final 8 2021-03-21 匿名内部类访问局部变量 为什么final 2017-08-23 为什么局部内部类只能访问final变量 9 2013-11-07 Java内部类引用外部类中的局部变量为何必须是final问题解析 2017-10-17 为什么匿名内部类只能访问其所在方法中的final类型的局部变量 17 2017-05-29 Java内部类引用外部类中的局部变量为何必须是final问题解析 2017-06-06 为什么匿名内部类方法参数要使用final 更多类似问题 > 为你推荐: