内部类为什么有些成员必须定义为final??
--------------------Configuration: <Default>--------------------
E:\剑\测试的放这里\Sword_Code.java:186: local variable autonewline is accessed from within inner class; needs to be declared final
if(autonewline.getState()==false)
^
1 error
Process completed.
我把他改为final 或者把声明语句放在构造器外就可以通过.
问题点数:20、回复次数:5Top
1 楼glacier3(操)回复于 2006-06-02 21:57:02 得分 5
好像没有这个规定Top
2 楼interhanchi(on the Java Road)回复于 2006-06-02 23:00:09 得分 5
这是规定:
如果定义了一个匿名内部类,并且希望它使用一个在其外部定义的的对象,那么编译器会要求其参数引用是final的。Top
3 楼qq14923349(剑神)回复于 2006-06-03 08:45:38 得分 0
那么还有没有其他办法?不设为FINAL或者不置方法外Top
4 楼love_1980()回复于 2006-06-03 09:15:43 得分 5
学习!Top
5 楼huyc_fly()回复于 2006-06-03 09:21:41 得分 5
http://community.csdn.net/Expert/topic/4668/4668977.xml?temp=.873089Top




