Java多態和繼承--一個動物類研究透

(1) 定義“動物”類,此類中有動物的屬性有3個:1、名稱變量,2、腿的數量變量,3、動物的數量。此類中有動物的方法5個:1、設置動物腿數量的方法;2、獲得腿數量的方法;3、設置動物名稱的方法;4、獲得動物名稱的方法;5、設置動物數量的方法;6、獲得動物數量的方法;7、輸出動物的特徵“我是動物”;

(2) 定義“魚類”,是“動物類”的子類,要求基於父類的屬性和方法,在該類中實現方法完成:1、設置魚的數量並返回魚的數量;2、輸出動物特徵“我是動物,我會游泳”。

(3) 定義“老虎類”,是“動物類”的子類,求基於父類的屬性和方法,在該類中實現方法完成:1、設置老虎的數量並返回老虎的數量;2、輸出動物特徵“我是動物,我會咆哮”。

(4) 定義“華南虎”類,是“老虎類”的子類,求基於父類的屬性和方法,在該類中實現方法完成:1、設置華南老虎的數量並返回華南老虎的數量;2、輸出動物特徵“我是動物,我是華南虎”。

(5) 定義測試類,實現多態。

在這裏插入圖片描述

1.動物類

public class Animal {
    	private String name;
	private int legnum;
	private int animalnul;
        
        public Animal(){}

    public Animal(String name, int legnum, int animalnul) {
        super();
        this.name = name;
        this.legnum = legnum;
        this.animalnul = animalnul;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getLegnum() {
        return legnum;
    }

    public void setLegnum(int legnum) {
        this.legnum = legnum;
    }

    public int getAnimalnul() {
        return animalnul;
    }

    public void setAnimalnul(int animalnul) {
        this.animalnul = animalnul;
    }
    
    public void print(){
    }   
        
}

2.魚類

public class Fish extends  Animal{

    public Fish() {
         setAnimalnul(400);
         setName("小魚兒");
         setLegnum(0);
    }

    public Fish(String name, int legnum, int animalnul) {
        super(name, legnum, animalnul);
    }
    
    public void print(){
        System.out.println("我是魚,我會游泳");
        System.out.println("我是"+super.getName() + "並且數量:"+ super.getAnimalnul() + "有腿:"+ super.getLegnum());
    }
    
}

3.老虎類

public class Tiger extends  Animal {
     public Tiger() {
         setAnimalnul(50);
         setName("老虎");
         setLegnum(4);
    }

    public Tiger(String name, int legnum, int animalnul) {
        super(name, legnum, animalnul);
    }
    public void print(){
        System.out.println("我是老虎,我會咆哮");
        System.out.println("我是"+super.getName() + "並且數量:"+ super.getAnimalnul() + "有腿:"+ super.getLegnum());
    }
   
}

4.華南虎類

public class huananTiger extends  Tiger{

    public huananTiger() {
         setAnimalnul(100);
         setName("華南老虎");
         setLegnum(4);
    }

    public huananTiger(String name, int legnum, int animalnul) {
        super(name, legnum, animalnul);
    }
    
    public void print(){
        System.out.println("我是動物,我是華南虎");
        System.out.println("我是"+super.getName() + "並且數量:"+ super.getAnimalnul() + "有腿:"+ super.getLegnum());
    }
}

5.主類測試

public class Lab4 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Animal animal;
        animal = new Animal();
        
        animal = new Fish();
        animal.print();
        
        animal = new Tiger();
        animal.print();
      
        animal = new huananTiger();
        animal.print();
        
        
    }
    
}

6.運行結果
在這裏插入圖片描述

發佈了28 篇原創文章 · 獲贊 7 · 訪問量 4682
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章