私は、私が作成するさまざまなタイプのリスト(学生、学校など)を使用する必要があるJavaプロジェクトに取り組んでいます。Javaのリストメソッドをオーバーライドする方法は?
問題は、私は例のための「containe」のように、このタイプ(またはクラス)といくつかのリストのメソッドを使用する必要があるということです...
私は自分のリスト(ArrayListのか、ベクトルを作成することで、このメソッドをオーバーライドしてみてください)これはJavaのリストから拡張されています...しかし、私はこの新しいリスト(私のリスト)を別のタイプで使用したいので、多くの問題があります。私はそれを使用する方法を
public class myList extends ArrayList<Object>{
public myList() {
}
/***methods***/
}
と、この:
public class newclass(){
.
.
.
myList<student> sl=new myList<student>();
.
.
しかし、それは動作しません、私はJavaのリストからはmyListを拡張する方法を
これ。では、これを行う正しい方法は何でしょうか。
とありがとうございます。あなたが探しているものを
2 sidenodes。クラスはJava命名規則に従って大文字で始まります。第2に、ジェネリックを 'Object'として定義することによってこのカスタム' List'を生タイプにしないでください。これは後で問題を引き起こすだけです(これもあなたの問題です)。それを 'MyList extends ArrayList 'にしてください。 –
SomeJavaGuy
[汎用クラスの拡張]の可能な複製(http://stackoverflow.com/questions/7255643/extending-generic-classes) –
私が正しく理解しているかどうかわかりませんが、必要なのはあなたのオブジェクトに匹敵するものを実装することですので、並べ替えや他のメソッドが動作します...リファレンス:http://stackoverflow.com/a/3718515/2101088 – Rodrigo