我在一个注释标记的位置下面的代码得到一个如何声明一个私有整数?
“表达的非法启动”
错误。我该如何纠正这个错误?
public static void main(String[] args) {
private int w=5; //Problem here"Illegal start of expression"//
private int Pw=0xb7e15163, Qw=0x9e3779b9;
private int[] S;
我在一个注释标记的位置下面的代码得到一个如何声明一个私有整数?
“表达的非法启动”
错误。我该如何纠正这个错误?
public static void main(String[] args) {
private int w=5; //Problem here"Illegal start of expression"//
private int Pw=0xb7e15163, Qw=0x9e3779b9;
private int[] S;
private
变量的访问修饰符,因为他们是实例领域。他们超出了方法。你需要一个实例来使用它们,你通常需要访问器和突变的方法(因为他们是private
,仅此class
可以访问它们,确实包括main
) -
private int w=5;
private int Pw=0xb7e15163, Qw=0x9e3779b9;
private int[] S;
public static void main(String[] args) {
ThisClass tc = new ThisClass();
System.out.println(tc.w);
}
感谢elliot,你的解决方案真的有帮助X'D 已经4天了我很困惑,因为它不能解决这个问题X'( –
private
关键字?它是一个访问级别修改器。 和access level modifiers确定其他类是否可以使用特定字段或调用特定方法。所以,它正在被应用到类的实例成员 - 实例字段,实例方法中。在你的情况,
public static void main(String[] args) {
// TODO code application logic here
private int w=5;
w
是越来越声明和方法main
中定义。并且main
方法在您的班级内。因此,变量w
没有资格成为类别的成员。这是一个局部变量,其范围在main
方法中。因此,访问级别修改器不能应用于在方法main()
中定义的变量w
。这就是为什么你得到“非法表达开始”。在一个方法中,指定对变量的访问在语法和语义上都不是正确的。
在普通课堂上你会怎么做?无论如何,**'访问修饰符**不适用于**局部变量**,而是** **实例变量**。我希望你明白不同之处。 – SacJn