我们假设我们有以下情况:
public class SomeClass {
}
现在我们有一个类型参数SomeClass
而不是T
的泛型类。
public class GenericClass <SomeClass> {
List<SomeClass> list;
public GenericClass() {
list = new ArrayList<>();
}
public void add(SomeClass obj) {
list.add(obj);
}
}
类型参数SomeClass
是否会影响整个SomeClass
中的引用数据类型GenericClass
?
答案 0 :(得分:3)
是即可。在此上下文中,这是名称阴影。您仍然可以使用完全限定的类名称消除歧义(只要您使用包,就像您应该的那样)。此外,对于使用常规类型的常规短类型名称,这是一个很好的论据。
答案 1 :(得分:2)
总之 - 是的,它会影响SomeClass
。不过,你仍然可以使用完全限定的类名(例如com.exmaple.SomeClass
)来引用它。