可能重复:
无法引用在不同方法中定义的内部类中的非最终变量
我只是在做实验,有一个问题。
为什么当我从匿名内部类访问非最终类变量时这是可以接受的:
static JLabel e = new JLabel("");
public static void main(String[] args) {
JButton b = new JButton("ok");
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
String l = e.getText();
}
});
}
但是如果没有 final 修饰符,以下内容是不可接受的: