在java中我正在使用generics
,在课堂上我想使用implements interface(? extends class)
,这个界面是generic interface<T>
,但我得到的消息是
same interface as superclass
代码示例:
public interface ISomething<T>
{
string Name { get; set; }
string GetType(T t);
}
public class SomeClass implements ISomething<T extends SomeClass2>
这可能吗?
答案 0 :(得分:2)
您不能使用未定义的通用说明符。在SomeClass
的示例中,未声明T
。
这是无效的:
public class SomeClass implements ISomething<T extends SomeClass2>
其中任何一个都有效
public class SomeClass<T extends SomeClass2> implements ISomething<T>
或
public class SomeClass implements ISomething<SomeClass2>