33问答网
所有问题
Java为什么不能在 类中方法外给成员变量赋值(已定义)
class A {
int i;
i = 1;
}
为什么不行
举报该问题
推荐答案 推荐于2018-02-02
i=1是语句,语句出现在类成员的位置(类中,成员方法之外)需要加{},使之成为构造代码块,否则在编译时会报错。改成这样就可以了(jdk8.0编译通过):
class AA {
int i;
{
i=i;
}
}
public class Test {
public static void main(String[] args) {
AA a2=new AA();
}
}
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://33.wendadaohang.com/zd/Rh50ddhcdWWRWBdcBd5.html
其他回答
第1个回答 推荐于2017-09-19
i = 1
是java 的代码行,代码必须放到方法中 或静态代码块 中!!本回答被提问者采纳
第2个回答 2015-11-13
如果这样赋值,那么i=1会在什么时候执行呢?
i=1不属于任何一块,这就像为什么1+1要等于2这种.
相似回答
大家正在搜
相关问题
在java中为什么成员变量的定义和赋值不能分步进行
java问题:在类中方法外可以定义变量并赋初值,那定义对象能...
Java中能把方法赋值给变量么?
Java中成员变量为什么不能像局部变量那样重新赋值,比如这样
java中数组的赋值不能在方法外进行么?
java怎么在类的方法中给该类的成员变量二维数组赋值?
java成员变量赋值
在java语言中,静态变量是不是不能在方法中定义?只能在类里...