Elephant.java



/** 動物園で飼われている象を表すクラス */

package zoo;

public class Elephant extends Pet {

  /** コンストラクタ */
    public Elephant() {
        weight = 10;
        age = 0;
    }

    public Elephant( String value ) {
        this();
        name = value;
    }

  /** 成長のステップのメソッドの実装 */
    public void step( Environment env ) {
        Food[] foods = env.getFoods();
        eat( foods );
        int days = env.getDays();
        addAge( days );
    }

  /** 食べるという動作のメソッドの実装 */
    public void eat( Food[] foods ) {
        int input=0;
        for( int i=0; i<foods.length; i++ ) {
            input += foods[i].getEnergy();
            foods[i].setEnergy( 0 );
        }
        int output = (weight+10)*10;
        weight += (input-output)/100;
    }

  /** 年齢の加算のメソッドの実装 */
    public void addAge( int days ) {
        age += days;
    }
}