2012-10-17 78 views
0

我使用generics,並在課堂上我想使用implements interface(? extends class)該接口是generic interface<T>,但我得到消息實現當接口獲得相同的接口,在Java超

same interface as superclass 

代碼示例:

public interface ISomething<T> 
{ 
    string Name { get; set; } 
    string GetType(T t); 
} 

public class SomeClass implements ISomething<T extends SomeClass2> 

這是可能的嗎?

+3

請提供一些代碼段。 –

+0

你能發佈實際的代碼嗎? –

+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>