为了账号安全,请及时绑定邮箱和手机立即绑定

请问大神是什么原因造成的两个结果不同啊?

package singletonpattern;

/**

 * 懒汉模式

 * @author Administrator

 *

 */

public class Singleton {

private static Singleton singleton ;

private Singleton(){

}

public static Singleton getSingleton(){

if(singleton.equals(null))

singleton = new Singleton() ;

return singleton ;

}

}

/**

出现java.lang.NullPointerException

当把上边的粗体字改为if(singleton == null)后,输出结果正常。我想请教是什么原因啊

*/

正在回答

2 回答

因为只有对象才能调用equals 方法!

刚开始你的对象是null

没有指向对象,哪来的方法啊!

equals 是属于对象的! 

1 回复 有任何疑惑可以回复我~

应为对象为null所以没有方法调用 报出空指针异常

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问大神是什么原因造成的两个结果不同啊?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信