如何覆盖java列表方法?

时间:2016-04-25 12:35:40

标签: java list class methods override

我正在开发一个java项目,我需要使用我创建的不同类型的列表(例如学生,学校......)。

问题是我需要使用一些列表方法,这些类型(或类),如“容器”,用于Ex ...

我尝试通过创建自己的列表(arraylist或vector)来覆盖这些方法,这是从java列表扩展...但我有很多问题,因为我想使用这个新列表(我的列表)与不同的类型。 / p>

这是我如何从java列表扩展myList:

public class myList extends ArrayList<Object>{

public myList() {
}
    /***methods***/
}

以及我如何使用它:

public class newclass(){
       .
       .
       .
    myList<student> sl=new myList<student>();
       .
       .

但它不起作用。那么这样做的正确方法是什么。

并谢谢。

1 个答案:

答案 0 :(得分:1)

您要找的是Generics

public class myList<T> extends ArrayList<T> {
...
}

通过这种方式,您可以创建自己喜欢的列表:

myList<student> sl = new myList<>();

响应更新:

  

如何使get -for example-在声明中返回相同的类型    - 而不是Object

类型

回复您的列表

myList<student> sl = new myList<>();
sl.add(new student());
student s = sl.get(0);

回复ArrayList

// But it works also with an ArrayList which implicitly mean that you have no need 
// to create your own implementation of an ArrayList
List<student> sl = new ArrayList<>();
sl.add(new student());
student s = sl.get(0);