为什么if(this==obj)所判断的两个引用对象的地址是相等呢?

来源:9-9 Java 中的 Object 类 Ⅱ

fsnh

2020-05-03 02:14

明明一个this指的是dog ,而obj指的是dog2,按道理说this==obj应该等价于dog==dog2。Dog dog = new Dog();  Dog dog2 =new Dog();按道理说明明开辟了两条不同的内存地址,为什么在这里竟然就能够相等呢?我希望知道详细的实现原理,谢谢。


写回答 关注

1回答

  • 勿优
    2020-05-03 18:32:43

    这里并没有说两个引用对象的地址一定是相等的啊,只是当其判断相等时会返回true,而不相等的话会继续向下执行代码呀

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530099 学习 · 6086 问题

查看课程

相似问题