class A {
public int someVar;
someVar = 123; /* cannot find symbol */
}
Run Code Online (Sandbox Code Playgroud)
为什么语言不能看到我刚刚声明的变量?这对Java来说是独一无二的,或者在所有有类OOP语言中都是如此吗?
您不能在类定义中包含任意语句.您可以在声明中立即分配变量:
public int someVar = 123;
Run Code Online (Sandbox Code Playgroud)
或者,在构造函数或其他实例范围中分配它:
public class A {
public int someVar;
public A() {
someVar = 123;
}
}
//Or...
public class B {
public int someVar;
{ someVar = 123; }
}
Run Code Online (Sandbox Code Playgroud)
请注意,第二种技术使用实例初始化程序,它并不总是最直接清晰的代码.
归档时间: |
|
查看次数: |
184 次 |
最近记录: |