前提・実現したいこと
True.java の #equals で、同じものを比べているはずなのに、TestBExp.java で実行すると、true が出力されず、false と出てしまいます。なぜでしょうか。
True.java
java
1public class True extends AbstractBExp implements BExp { 2 3 public boolean equals(Object o) { 4 if (o == null || (o instanceof BExp)) { 5 return false; 6 } 7 8 BExp that = (BExp) o; 9 return this == that; 10 } 11 12}
TestBExp.java
java
1public class TestBExp { 2 3 public static void main(String[] args) { 4 5 True t1 = new True(); 6 7 System.out.println("equals?" + t1.equals(t1)); 8 9 } 10 11}
###コマンドプロント
equals?false
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/08/02 09:17 編集
2018/08/02 09:23 編集
退会済みユーザー
2018/08/03 05:34
2018/08/03 05:55
退会済みユーザー
2018/08/03 06:28
2018/08/03 06:32
退会済みユーザー
2018/08/03 07:49
2018/08/03 07:54
退会済みユーザー
2018/08/03 10:13
2018/08/03 10:17
退会済みユーザー
2018/08/04 04:13