鍍金池/ 問答/Java/ 請(qǐng)問這個(gè)JAVA繼承的問題改怎么改?

請(qǐng)問這個(gè)JAVA繼承的問題改怎么改?

父類有個(gè)結(jié)構(gòu)體長紅框這樣

public class Pageable<T> implements POJO {
    private static final long serialVersionUID = -410571025796786344L;
    private int pageSize;
    private int page;
    private Collection<T> data;
    private int length;

    public Pageable() {
    }

    public Pageable(int page, int pageSize, int length, Collection<T> data) {
        this.page = page;
        this.pageSize = pageSize;
        this.length = length;
        this.data = data;
    }

子類 page pagesize data 都沒有,應(yīng)該怎么辦?
改了之后還是紅字了。。

public class NewPageable<T> extends Pageable<T> {
    private int total;

    public NewPageable(int page, int pageSize, int total, Collection<T> data) {
        super(page, pageSize, data);
        this.total = total;

    }

    public int getTotal() {
        return total;
    }

    public void setTotal(int total) {
        this.total = total;
    }

}
回答
編輯回答
孤島

不是沒有,是子類沒有權(quán)限訪問而已,Java規(guī)范的建議是通過調(diào)用父類的構(gòu)造器來實(shí)例化父類屬性變量,你試下調(diào)用super(...)


更新:
你把super(page, pageSize, data);改為super(page, pageSize, data.size(), data);試一下
另外,題主以后修改問題,不要?jiǎng)h在后面更新可以了

2017年1月3日 18:51