gpt4 book ai didi

java - 从Java中的泛型类型获取类实例

转载 作者:行者123 更新时间:2023-11-29 03:43:38 25 4
gpt4 key购买 nike

我有一个传递通用参数的方法。要执行一个必需的方法,我需要相同的类实例。我怎么才能得到它。我正在使用一种解决方法,但我想知道我们如何才能获得 Class 实例。

我使用的片段是:

public <T> T readModelWithId(Class<T> c, Serializable pk) {
// Some code here.
T t = (T)session.get(c, pk);
// Some code here.
return t;
}

问题是我不想在此方法中传递 Class 实例,因为它与属于通用类型的返回类型 T 相同。

最佳答案

您无法在该方法中获得类似 T.class 的内容,因此您必须传递类参数,因为您需要它从 session 中获取模型对象。

此外,这增加了一些额外的“类型安全”。您将强制调用者将返回类型指定为参数,因此返回的类型将不仅仅是“调用者可能期望的任何类型”(尽管我同意这使它变得多余)。

关于java - 从Java中的泛型类型获取类实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12039769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com