第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

很難讓我的子類(lèi)準(zhǔn)確地覆蓋我的父類(lèi)

很難讓我的子類(lèi)準(zhǔn)確地覆蓋我的父類(lèi)

PIPIONE 2023-11-01 21:05:34
我對(duì)編碼并不陌生,但對(duì)多態(tài)性/繼承等不熟悉。我對(duì)靜態(tài)/動(dòng)態(tài)綁定感到困惑,特別是當(dāng)我將不同的子類(lèi)放在一個(gè)數(shù)組中時(shí)會(huì)發(fā)生什么。我正在研究一些非常簡(jiǎn)單的動(dòng)物課程,只是想學(xué)習(xí)基礎(chǔ)知識(shí)。我也嘗試將它們定義為獅虎,但是當(dāng)我嘗試打印動(dòng)物大小數(shù)組時(shí),它們的大小都是-1。我現(xiàn)在的方式給了 p0 正確的大小,但不是 p1 。   public abstract class Animal {    public int size = -1;      }   public class Tiger extends Animal {   }   public class Liger extends Animal {     public int size = 121;   }   public static void main(final String[] args) {    Animal[] animal = new Animal[10];    Animal p0 = new Liger();    p0.size = 11;    animals[0] = p0;    Animal p1 = new Liger();    animals[1] = p1;  }當(dāng)我將獅虎定義為動(dòng)物時(shí),p1 的大小為 -1,而不是我想要的 121。我確信問(wèn)題在于我將其稱(chēng)為動(dòng)物而不是獅虎,但我不確定修復(fù)它的正確語(yǔ)法是什么。我希望他們能夠與老虎并列。
查看完整描述

2 回答

?
蕪湖不蕪

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊

public abstract class Animal {

    private int size;


    public Animal() {

        size = -1;

    }


    public Animal(int size) {

        this.size = size;

    }


    public void setSize( int size ) {

        this.size = size;

    }


    public int getSize() {

        return size;

    }


    public static void main(final String[] args) {


      Animal[] animals  = new Animal[2];

      animals[0] = new Liger(20);

      animals[1] = new Liger();


      for(int i = 0; i < animals.length; ++i) {

          System.out.println("Size : " + animals[i].getSize());

      }   

    }

}


public class Tiger extends Animal {

      public Tiger() {

         super();    

      }


      public Tiger(int size) {

         super(size);

      }

}


public class Liger extends Animal {

      public Liger() {

         super();    

      }


      public Liger(int size) {

         super(size);

      }  

}

這只是一個(gè)基本準(zhǔn)則,僅供參考。這里的要點(diǎn)是可以在后續(xù)子類(lèi)中覆蓋行為。Java教程


查看完整回答
反對(duì) 回復(fù) 2023-11-01
?
HUH函數(shù)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊

請(qǐng)問(wèn)你的行中的fs是什么


Animal p1 = fs.new Liger();

順便說(shuō)一句,看看這段代碼并告訴我它是否符合您的要求。


public static void main(final String[] args) {


    Animal[] animals = new Animal[10];


    Animal p0 = new Liger();

    p0.size = 11;

    animals[0] = p0;


    Animal p1 = new Liger();

    animals[1] = p1;


    System.out.println("p0.size "+ p0.size); // call as a superclass instance

    System.out.println("real p0.size "+ ((p0 instanceof Liger) ? ((Liger)p0).size : ((Tiger)p0).size) ); // cast to call the effective instance of the subclass

    System.out.println("p1.size "+ p1.size); // call as a superclass instance

    System.out.println("real p1.size "+ ((p1 instanceof Liger) ? ((Liger)p1).size : ((Tiger)p1).size) ); // cast to call the effective instance of the subclass



}


查看完整回答
反對(duì) 回復(fù) 2023-11-01
  • 2 回答
  • 0 關(guān)注
  • 249 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)