いくつかの奇妙な理由から、私はJava Utilからコレクションを実装したいと思います。removeとcontainsも含まれています。それで、私は自分自身を試してみたい。私の研究が起こったようJavaのコレクションの削除メソッドの一般的なタイプ
public class MyTest<E> implements Collection<E>{
@Override
public <T> boolean remove(T t){
return true;
}
@Override
public <T> boolean contains(T t){
return true;
}
}
、私はこのコードは、最終的remove(Object) of type Collection<E>
が、Javaのような消去は、単に代わりにそれを受け入れていないように思える持っていますが、求めて維持するつもりことを理解し:ここで私が見えるようにするコードは何ですかObjectを引数としてメソッドをオーバーライドします。誰もがそれを回避するために、とにかく知っているか、直接この
あなたは 'Collection'のJavadocを見れば、あなたは'()を削除していることがわかります'は実際に' Object'型のパラメータで宣言されています。 'MyTest'に' Collection 'を実装させたい場合は、そのパラメータで' remove() 'を実装する必要があります。回避策はありません。あなたは 'remove()'をオーバーロードすることができ、 'E'型のパラメータを宣言することができます。 –
Logan