我想写点像
public class A implements B<T implements C> {}
Run Code Online (Sandbox Code Playgroud)
和
public abstract class M<I extends P> extends R<I extends P> implements Q<I extends P> {}
Run Code Online (Sandbox Code Playgroud)
但我得到的错误就像多个标记和令牌上的语法错误延伸,预期.请让我知道这样做的正确方法是什么.
Col*_*ert 13
如果在泛型中有接口,则仍然必须使用extends关键字.
在您的情况下,如果您知道T将会是什么:
public class A<T extends C> implements B<T> {}
Run Code Online (Sandbox Code Playgroud)
如果你不这样做,你只需要B使用C类型的工具:
public class A implements B<C> {}
Run Code Online (Sandbox Code Playgroud)
对于第二部分,一旦定义了,I您可以在其他泛型类型中使用它:
public abstract class M<I extends P> extends R<I> implements Q<I> {}
Run Code Online (Sandbox Code Playgroud)
implements通用范围内没有关键字。这只是extends
此外 - 您应该仅在类定义中指定类型参数,而不是在超类型中。IE
public class A<T extends C> implements B<T> {}
Run Code Online (Sandbox Code Playgroud)