注:第一次写博客,可能会出一些问题,多多包涵
public class MethodA {
//静态变量 是在程序运行后就被加载了//实例变量 是在创建对象后才被加载
int i = set();
int j = 2;
public int set(){
return j;
}
public static void main(String[] args) {
MethodA a = new MethodA();
System.out.println(a.i);
}
}
结果:0
原因:在创建对象a时,顺序加载变量i,调用方法set(),此时j还没有初始化,所以返回的是0
如果把 int i = set();
int j = 2;交换一下顺序,或者把j设置成静态变量,结果就变成了2
注:本人初级java,基础部分待牢固。发现问题喜欢记录下来,后来发现记录到博客里面挺好的,以后会经常写。