3

我是一名 C# 程序员,并已同意帮助一名炒作 Java 作业。

在一个示例中,我想创建一个扩展通用列表的类。在 C# 中,这看起来像

public class MyListClass : List<MyCustomType>

我努力了

public class MyListClass extends List<MyCustomType>

并得到错误“这里没有预期的接口”。好吧,我不是在尝试使用界面...有什么提示吗?

4

4 回答 4

4

java.util.List是一个接口。您需要实现它而不是扩展它。

public class MyListClass implements List<MyCustomType>{
}
于 2012-10-31T06:17:55.227 回答
2

你不能扩展接口。你必须实施它。但是您可以扩展其中一种实现(例如 LinkedList):

public class MyListClass extends LinkedList<MyCustomType> {
于 2012-10-31T06:21:59.270 回答
1

Java 不是 C++,所以忘记所有关于标准模板的事情。

您可能想要的只是一个类型化的列表:

List<MyCustomType> myList = new ArrayList<MyCustomType>();

就这样。


将“扩展通用课程”作为作业的目标是不寻常的。这在现实世界中也很不寻常。

于 2012-10-31T06:26:34.480 回答
0

您需要声明一个泛型类/接口

public class MyListClass<T> implements List<T> { }

或者

public interface MyListInterface<T> extends List<T> { }

或者最好的

public class MyListClass<T> extends AbstractList<T> implements List<T> { }
于 2012-10-31T06:25:28.973 回答