0
問題があります。 Cloneable Interfaceの私のclone()メソッドは、そうしなければならないように動作しません。クローン()メソッドは正常に動作しません
私はこのようなものがあります
Figure cTest = new Square("Square", 0, 0, new Color(100, 20, 40), new Color(100, 20, 40), 4);
Figure cTest1 = cTest;
Figure cTest2 = (Figure)cTest.clone();
System.out.println(cTest == cTest1); //result true
System.out.println(cTest == cTest2); //result false
System.out.println(cTest.equals(cTest2)); // result false, but it should be true
Iは、図クラスにCloneableインタフェースを実装し、そしてreturn super.clone()
署名付きオーバーライドクローン()メソッド。
私は間違っていますか?
'clone'メソッドと' equals'メソッドを完全に参照する必要があります。 –
私は 'equals'をオーバーライドしていないと仮定します。この場合、デフォルトの実装が使用されます。これは 'return this == other'と等価です。 –
'問題は本当に漠然としている。 – tnw