instantiate
创建实例(精确参数类型)。
val obj = clz.instantiate()
val obj = clz.instantiate(args("param1", 42), argTypes(String::class.java, Int::class.java))Content copied to clipboard
不要使用 clz.newInstance() 的无参写法:Kotlin 重载解析会优先选 JDK Class.newInstance(), 与本扩展函数行为不同(不会 setAccessible、JDK 9+ 已 @Deprecated)。 使用 instantiate 可以避免这个陷阱。
Parameters
args
构造器参数值包装
argTypes
构造器参数类型;为空时会根据 args 自动推断