// If T is a class-level type variable:
class YourClass<T extends HasGetName> {
List<T> someList;
void print() {
for(T element : someList){
System.out.println(element.getName());
}
}
}
// If T is a method-class-level type variable:
class YourClass {
<T extends HasGetName> void print(List<T> someList) {
for(T element : someList){
System.out.println(element.getName());
}
}
}
2条答案
按热度按时间huus2vyu1#
T
需要上界到具有getName()
方法。例如:
然后使用
T extends HasGetName
:rmbxnbpk2#
最安全的方法是:
java15引入了something-cool-list-something;
您不需要对instanceof+class+var名称进行任何强制转换