gpt4 book ai didi

Java:是否可以创建具有 "variable"字段的类?

转载 作者:行者123 更新时间:2023-11-30 06:17:02 25 4
gpt4 key购买 nike

感谢您的帮助。

我有以下情况:

我有一个包含 API 响应的类:

public class EventsResponse extends ApiResponse {

public JSONArray response;

public EventsResponse(Boolean success,RequestHandle requesthandle, JSONArray responsefromapi) {
super(success, requesthandle);
if(responsefromapi!=null)this.response=responsefromapi;
else response=null;
}
public EventsResponse(Boolean success,RequestHandle requesthandle, JSONObject responsefromapi) {
super(success, requesthandle);
if(responsefromapi!=null)this.response=responsefromapi;
else response=null;
}
}

如您所见,这里有些东西不起作用:

如果 responsefromapi 是一个 JSONObject 我尝试将它分配给一个 response 这是一个 JSONArray 显然是不工作...

我想做的是:

responsefromapi 分配给 response 并让 response 成为 JSONObjectJSONArray 取决于什么是 responsefromapi

这样我就可以使用一个类 EventsResponse 来处理这两种情况,EventsResponse 将包含一个 response,它是 JSONObjectJSONArray 视情况而定。

请问这可能吗?

谢谢

最佳答案

尝试使用泛型:

public class EventsResponse<K> extends ApiResponse {
public K response;
public EventsResponse(Boolean success, RequestHandle requesthandle, K responsefromapi) {
super(success, requesthandle);
response = responsefromapi;
}
}

你可以这样调用它:

new EventResponse<JSONObject>(...);

new EventResponse<JSONArray>(...);

关于Java:是否可以创建具有 "variable"字段的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26357844/

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