java - 通用与通配符未知类型

标签 java generics wildcard

建议什么时候做:

public <E> boolean hasPropertyX(List<E extends User> alist);

对比

public boolean hasPropertyX(List<? extends User> alist);

看起来它们都同样有效。

最佳答案

没有类型化的返回值,我能想到的唯一区别是在方法调用期间显式类型化声明的第一种方式。

例如,您在类型化类中使用它 C<K extends String>

List<V extends String> input = ...;
boolean var = obj.hasProperty<K>(input);

会引发编译器错误。但是为什么会有人想要这样做...

很好的问题,即使答案很可能是相同的。

关于java - 通用与通配符未知类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29178872/

相关文章:

java - jooq 中的列函数用于分割字符串

c# - 使用 2 列的 LINQ JOIN 的通用扩展方法

java - 如何向 Java 通用通配符列表添加元素

java - 如何通过 Java 中的通用通配符捕获创建数组的克隆?

ssl - 带有通配符证书的错误 ERR_CERT_COMMON_NAME_INVALID

java - 如何在不使用集合的情况下从 Java 中的给定数组中删除重复元素

java - 带有 LIKE 条件的 Spring Data JPA 查询在运行时抛出异常

java - 如何在java中创建列表的列表(list<classname>)

c++ - 类型类似于泛型函数的模板成员变量

Java获取类型的默认值