Спасибо за помощь.Java: возможно ли создать класс с «переменными» полями?
У меня следующая ситуация:
У меня есть класс, который содержит ответ от 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
является a JSONObject
Я пытаюсь присвоить его response
, который является JSONArray
, очевидно, не работает ...
Что я хотел бы сделать, это:
назначить что responsefromapi
для response
и имеют response
быть JSONObject
или JSONArray
в зависимости от того, что responsefromapi
.
Так что я могу использовать класс EventsResponse
аббревиатура для обработки как ситуации и EventsResponse
будет содержать response
который JSONObject
или JSONArray
в зависимости от ситуации.
Возможно ли это?
Благодаря
Все возможно, но что бы вы тогда планировали сделать с объектом, который не знает точного типа? – biziclop
@biziclop Я могу проверить, какой объект я могу получить назад и действовать соответственно, то есть идея ... –
Имеет ли ваш responsefromapi JSONObject ключ, значение которого является массивом, и вы хотите, чтобы этот массив был сохранен в ответ JSONArray .? – Amal