為什么if(this==obj)所判斷的兩個引用對象的地址是相等呢?
明明一個this指的是dog ,而obj指的是dog2,按道理說this==obj應該等價于dog==dog2。Dog dog = new Dog();??Dog dog2 =new Dog();按道理說明明開辟了兩條不同的內存地址,為什么在這里竟然就能夠相等呢?我希望知道詳細的實現原理,謝謝。
明明一個this指的是dog ,而obj指的是dog2,按道理說this==obj應該等價于dog==dog2。Dog dog = new Dog();??Dog dog2 =new Dog();按道理說明明開辟了兩條不同的內存地址,為什么在這里竟然就能夠相等呢?我希望知道詳細的實現原理,謝謝。
2020-05-03
舉報
2020-05-03
這里并沒有說兩個引用對象的地址一定是相等的啊,只是當其判斷相等時會返回true,而不相等的話會繼續向下執行代碼呀