java宠物店多态源代码
生活随笔
收集整理的這篇文章主要介紹了
java宠物店多态源代码
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Pet類
package com.aaa.adv; /*** 父類:寵物類* @author 張晨光**/ public class Pet {//成員變量private String name;private int health;//public Pet(){}//構(gòu)造public Pet(String name, int health) {super();this.name = name;this.health = health;}//生成getter/setter;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getHealth() {return health;}public void setHealth(int health) {this.health = health;}//增加一個(gè)方法:eatpublic void eat(){System.out.println("寵物類開始虛擬的吃");}//針對(duì)公共的方法,一定要學(xué)會(huì)提取出來public void eat(String food){System.out.println(this.getName()+"吃"+food);}}Cat類
package com.aaa.adv;public class Cat extends Pet {public Cat(String name, int health) {super(name, health);}}Dog類
package com.aaa.adv;public class Dog extends Pet {public Dog(String name, int health) {super(name, health);// TODO Auto-generated constructor stub}//Dog子類,本身仍然保留了父類的eat()不帶參數(shù)的方法//子類,增加了一個(gè)參數(shù);不再是重寫的方法; // public void eat(String food){ // System.out.println("小狗吃"+food); // } }Parrot類
package com.aaa.adv; /*** 鸚鵡類* @author 張晨光**/ public class Parrot extends Pet {public Parrot(String name, int health) {super(name, health);}}Rat類
package com.aaa.adv;public class Rat extends Pet {public Rat(String name, int health) {super(name, health);// TODO Auto-generated constructor stub}}Master類
package com.aaa.adv; /*** 主人類:姓名 性別 地址 電話 ,本身是不是沒有食物的屬性;* @author 張晨光**/ public class Master {//成員變量;//喂養(yǎng)狗;方法(動(dòng)物,食物) // public void feed(Dog dog,String food){ // dog.eat(food); // }//喂養(yǎng)貓 // public void feed(Cat cat,String food){ // cat.eat(food); // }//要喂養(yǎng)鸚鵡,需要再次增加鸚鵡的喂養(yǎng)方法; // public void feed(Parrot par,String food){ // par.eat(food); // }//上面的兩個(gè)方法,就是上次課說的方法的重載;重載在一個(gè)類里面;重寫多個(gè)類;public void feed(Pet pet,String food){pet.eat(food);}public static void main(String[] args) {//maindog cat自動(dòng)去eat;Dog dog=new Dog("旺財(cái)狗",100);Cat cat=new Cat("花臉貓",100);//增加一個(gè)主人類;主人來喂養(yǎng)狗和貓.Master master=new Master();master.feed(dog,"排骨");master.feed(cat,"貓糧");//***********增加Parrot p=new Parrot("金剛 ",100);master.feed(p, "瓜子");Rat rat=new Rat("米老鼠",100);master.feed(rat, "木屑");}}圖示:
總結(jié)
以上是生活随笔為你收集整理的java宠物店多态源代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: inline-block清除空隙2
- 下一篇: 十分钟入门RocketMQ