main方法程序代码:
package com.bdqn; public class PetTest { public static void main(String[] args) { Master master = new Master(); Pet dog = new Dog(); dog.setName("黑鼻"); dog.setHealth(88); dog.setLove(78); ((Dog) dog).setStrain(1); dog.print(); dog.play(); System.out.println("**********************"); Pet penguin = new Penguin(); penguin.setName("QQ"); penguin.setHealth(77); penguin.setLove(76); ((Penguin) penguin).setSex(1); penguin.print(); penguin.play(); } }
主人类代码:
package com.bdqn; public class Master { public void playWithPet(Pet pet){ if(pet instanceof Dog){ Dog dog = (Dog)pet; dog.play(); }else if(pet instanceof Penguin){ Penguin penguin = (Penguin) pet; penguin.play(); } } }
Pet类代码:
package com.bdqn; public abstract class Pet { private String name; private int health; private int love; public void setName(String name) { this.name = name; } public String getName() { return name; } public void setHealth(int health) { if(health < 0 || health > 100){ health = 60; } this.health = health; } public int getHealth() { return health; } public void setLove(int love) { if(love < 0 || love > 100){ love = 60; } this.love = love; } public int getLove() { return love; } public void print(){ System.out.println("宠物的自白:"); System.out.print("我的名字叫"+getName()+",健康值是"+getHealth()+",和主人的亲密度是"+getLove()); } public abstract void play(); }
Dog类代码:
package com.bdqn; public class Dog extends Pet{ private String strain; public String getStrain() { return strain; } public void setStrain(int strain) { if(strain == 1){ this.strain = "拉布拉多"; return; } this.strain = "博美"; } public void print(){ super.print(); System.out.println(",我的种类是:"+this.getStrain()); } public void play() { System.out.println("扔飞碟出去,狗狗跑去捡回来......"); } public void toHospital(){ System.out.println("打针、吃药"); super.setHealth(60); } }
Penguin类代码:
package com.bdqn; public class Penguin extends Pet{ private String sex; public String getSex() { return sex; } public void setSex(int sex) { if(sex == 1 ){ this.sex = "Q仔"; return; } this.sex = "Q妹"; } public void print(){ super.print(); System.out.println(",我的性别是:"+this.getSex()); } public void play() { System.out.println("带企鹅去南极游泳......"); } }
程序运行结果:
转载于:https://www.cnblogs.com/yangwenxiang/p/10299573.html