gpt4 book ai didi

java - T::class.java.newInstance() 已弃用

转载 作者:行者123 更新时间:2023-12-02 03:33:23 25 4
gpt4 key购买 nike

inline fun <reified T> blah(block: T.() -> Unit): Something {
request = T::class.java.newInstance()

newInstance() 已被弃用,通常当您转到源代码时,它会说明为什么它被弃用以及替代方案是什么,但这次我只看到:

/** @deprecated */
@CallerSensitive
@Deprecated(
since = "9"
)
public T newInstance() throws InstantiationException, IllegalAccessException {
// ...
}

在 Kotlin 中创建具体化类型实例的新的、未弃用的方法是什么?

更新:根据要求提供更多信息:

JDK Version: 11 (not Android, just pure JVM)
Kotlin Version:1.3.61

最佳答案

其实这来自于Java本身。适当的替换是:

T::class.java.getDeclaredConstructor().newInstance()

您还可以查看 Class.newInstance()-Javadoc这也说明了这一点。

关于java - T::class.java.newInstance() 已弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60145500/

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