Java 参数计数的非法修饰符;只允许决赛
我是Java新手,当我尝试创建一个公共/私有变量时,我遇到了一个问题 例子:Java 参数计数的非法修饰符;只允许决赛,java,Java,我是Java新手,当我尝试创建一个公共/私有变量时,我遇到了一个问题 例子: private int varName Eclipse给了我一个错误: 参数计数的非法修饰符;只允许使用final您不能对方法参数应用访问级别修饰符。只有班级成员才可以接受。此外,这没有任何意义,因为无法在方法范围之外访问参数。局部变量和参数不能具有public或private修饰符。您只能向他们提供最终版。甚至不能使用static。这通常发生在我们尝试访问本地变量时,并且我们尝试在匿名类方法中访问它,如下所示: JB
private int varName代码>
Eclipse给了我一个错误:
参数计数的非法修饰符;只允许使用final
您不能对方法参数应用访问级别修饰符。只有班级成员才可以接受。此外,这没有任何意义,因为无法在方法范围之外访问参数。局部变量和参数不能具有public
或private
修饰符。您只能向他们提供最终版
。甚至不能使用static
。这通常发生在我们尝试访问本地变量时,并且我们尝试在匿名类方法中访问它,如下所示:
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或类变量,才能在匿名类方法中访问。能否显示代码?否则,您将得到一些随机猜测。@user3421750请想一想。那些修饰语有什么好处?您无论如何都不能访问方法外部的局部变量。甚至没有语法可以尝试从该方法外部的任何地方引用方法参数。也许你应该解释你在追求什么,而不是问你眼前的问题。