java – 嵌套类的公共构造函数
发布时间:2020-12-15 05:00:36 所属栏目:Java 来源:网络整理
导读:我正在解析一个 JSON并遇到一个异常,说我的某个实体没有默认构造函数.这是代码: public class MyPromosResponse extends BaseResponse { public MyPromosResponseData response; public MyPromosResponse() { } public TreeSetPromo getMyPromosResponseDat
我正在解析一个
JSON并遇到一个异常,说我的某个实体没有默认构造函数.这是代码:
public class MyPromosResponse extends BaseResponse { public MyPromosResponseData response; public MyPromosResponse() { } public TreeSet<Promo> getMyPromosResponseData() { return new TreeSet<Promo>(response.getEvents()); } @JsonIgnoreProperties(ignoreUnknown = true) class MyPromosResponseData { public ArrayList<Promo> events; public ArrayList<Table1PromoData> Table1; public MyPromosResponseData() { } public ArrayList<Promo> getEvents() { return events; } ArrayList<Table1PromoData> getTable1() { return Table1; } } class Table1PromoData { public int id; public int eventid; public int cardholderid; public Table1PromoData() { // Here is the constructor. } public int getId() { return id; } public void setId(int id) { this.id = id; } public int getEventid() { return eventid; } public void setEventid(int eventid) { this.eventid = eventid; } public int getCardholderid() { return cardholderid; } public void setCardholderid(int cardholderid) { this.cardholderid = cardholderid; } } } 当我将Table1PromoData作为嵌套类时,我有错误,无法找到默认构造函数,但是定义了一个公共构造函数.如果我将它移动到一个单独的文件一切都很好 – lib找到构造函数. 将默认构造函数移动到单独的文件后,为什么默认构造函数可见? 解决方法
如果我的内部类不是静态的,我遇到了JSON序列化程序(特别是Jackson)的问题 – 显然如果你的内部类不是静态的,那么默认构造函数会被破坏
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |