Lai*_*uan 6 java generics interface
假设我有一个A
泛型类型的接口:
public interface A<T> {
T getT();
}
Run Code Online (Sandbox Code Playgroud)
以及B
实现它的类:
public class B implements A {
public Integer getT() { return 1; }
}
Run Code Online (Sandbox Code Playgroud)
...但是没有给它一个类型参数.
这里发生了什么?是否A
可以推断A<Integer>
?是否可以强制用户使用implements
语句(如B implements A<Integer>
)写入类型参数?
小智 6
你的问题:
这里发生了什么?
由于您省略了泛型类型,系统推断出它是Object
.您可以使用相同的结果完成以下操作:
public class B implements A<Object> {
...
}
Run Code Online (Sandbox Code Playgroud)
下一个问题:
是否可以强制用户使用implements编写类型参数(如B实现A)
是.这是如何:
interface A<T extends Integer>
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
归档时间: |
|
查看次数: |
2272 次 |
最近记录: |