如何使用泛型方法和 Class<T> 反序列化 JSON 字符串为指定类型?
json 字符串为指定类型?"> 反序列化 json 字符串为指定类型?" />
泛型类方法中的 class
泛型类的方法可以使用 class
在给定的示例中,reqbody 类具有一个接受 json 字符串作为参数的构造函数。为了使用泛型方法 fromjson 进行反序列化,需要将目标类型的 class 作为参数传递给构造函数。
解决方案:
为此,可以将 class
public class reqbody<t> { private t parameter; /** * 使用 json 反序列化赋值 */ public reqbody(string json, class<t> clzz) { parameter = (t) jsonobject.parseobject(json, clzz); } }</t></t>
然后,在构造函数中使用 class 类型参数来实例化目标类型:
ReqBody<parameter> reqBody = new ReqBody<parameter>("{\"path\":\"The path param\"}", Parameter.class);</parameter></parameter>