我正在查看 EntityManager.java
我明白了
public <T extends Object> T find(Class<T> type, Object o, LockModeType lmt, Map<String, Object> map);
我从未见过<X>
类方法定义中的类型声明。这是什么意思?
public <T extends Object> T find(
似乎它定义了 T 将扩展另一个类。我是否理解这需要您扩展另一个对象?
最佳答案
public <T extends Number> T find()
这意味着您定义了一个 generic函数,为了便于定义,它有一个用 T 表示的类型参数。 T 必须是 Number 的子类(扩展)。该函数返回一个 T 类型的对象。
然后你可以这样调用函数:
Double d = find();
Integer i = find();
但是你下面是编译时错误:
String s = find(); //error
因为 String 没有扩展 Number。
关于java - <X>在java方法声明中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8381018/