问题描述:
代码运行时报错:java: 可能尚未初始化变量Single2
public class Main {
public static void main(String[] args) {
Single2 Single2 = Single2.getInstance();
Single2 Single21 = Single2.getInstance();
System.out.println(Single2==Single21);
}
}
原因分析:
Single2 Single2 = Single2.getInstance();
对于这行代码,Single2.getInstance()中的Single2指的是等号左边的Single2属性,而非Single2这个类
解决方案:
把Single2属性的S改为小写s,问题解决:
public class Main {
public static void main(String[] args) {
Single2 single2 = Single2.getInstance();
Single2 single21 = Single2.getInstance();
System.out.println(single2==single21);
}
}
出现这类错误的原因是因为我直接shift+Ctrl+R快捷键,没看清楚把single替换成Single2了,因此要慎用“Replace All”按鈕