我是Java的新手,我有一个问题,当我尝试创建一个公共/私有变量
例:
private int varName;
Eclipse给了我一个错误:
Illegal modifier for parameter count; only final is permitted
答案 0 :(得分:8)
局部变量和参数不能包含public
或private
修饰符。您只能向他们提供final
。甚至不能使用static
。
答案 1 :(得分:4)
您无法在方法参数上应用访问级别修饰符。只有班级成员才能接受。此外,这没有任何意义,因为参数不可能在方法范围之外访问。
答案 2 :(得分:0)
这种情况通常发生在我们尝试访问本地变量时,我们尝试在下面的匿名类方法中访问它:
JButton button=new JButton();
int a=5;
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println(""+a);//Compiler Error:Cannot refer to a non-final variable a inside an inner class defined in a different method
}
});
所以这里变量“a”需要是final或Class变量才能在Anonymous类方法中访问。