gpt4 book ai didi

java - java中如何获取对象的运行时类型

转载 作者:行者123 更新时间:2023-12-01 11:33:17 24 4
gpt4 key购买 nike

我有这个代码:

public void doSomething(Integer param){
.
.
.
JAXBElement<Integer> jaxb = new JAXBElement<Integer>
(new QName("uri","local"),Integer.class, param);
.
.
.
}

而且我希望它更加灵活。我需要参数为 Object 类型,但我不知道如何更改此行:

JAXBElement<what_do_I_put_here> jaxb = new JAXBElement<what_do_I_put_here>(new QName("uri","local"),Integer.class, param);

我希望它使用 param 中存储的类型的运行时类

public void doSomething(Object param){
.
.
.
JAXBElement<??????> jaxb = new JAXBElement<??????>
(new QName("uri","local"),?????.class, param);
.
.
.
}

最佳答案

不完全确定(目前无法访问 IDE),但不是这样的

public <T extends Object> void doSomething(T param) {
.
.
JAXBElement<T> jaxb = new JAXBElement<T>(new QName("uri", "local"), (Class<T>) param.getClass(), param);
.
.
}

关于java - java中如何获取对象的运行时类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30246821/

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