宠物类
1 package com.pet; 2 3 /** 4 * tip:添加主人给宠物洗澡,添加主人带宠物玩耍,不同宠物玩耍的行为不同 父类-宠物类 2019-07-17 5 * 6 * @author L 7 * 8 */ 9 public class Pet { 10 private String name; // 名字 11 private int health; // 健康值 12 private int love; // 亲密度 13 14 public String getName() { 15 return name; 16 } 17 18 public void setName(String name) { 19 this.name = name; 20 } 21 22 public int getHealth() { 23 return health; 24 } 25 26 public void setHealth(int health) { 27 this.health = health; 28 } 29 30 public int getLove() { 31 return love; 32 } 33 34 public void setLove(int love) { 35 this.love = love; 36 } 37 38 // 宠物自白 39 public void showInfo() { 40 System.out.println("宠物名字是:" + this.name + ",健康值是:" + this.health + ",亲密度是:" + this.love); 41 42 } 43 44 }
狗类
1 package com.pet; 2 3 /** 4 * tip:添加主人给宠物洗澡,添加主人带宠物玩耍,不同宠物玩耍的行为不同 5 * 子类-狗类 2019-07-17 6 * 7 * @author L 8 * 9 */ 10 public class Dog extends Pet { 11 private String strain; 12 13 public String getStrain() { 14 return strain; 15 } 16 17 public void setStrain(String strain) { 18 this.strain = strain; 19 } 20 21 public void showInfo() { 22 super.showInfo(); 23 System.out.println("宠物品种:" + strain); 24 } 25 26 public void playBall() { 27 System.out.println(this.getName() + "玩球中......"); 28 this.setHealth(getHealth() + 3); 29 } 30 31 }
企鹅类
1 package com.pet; 2 3 /** 4 * tip:添加主人给宠物洗澡,添加主人带宠物玩耍,不同宠物玩耍的行为不同 5 * 子类-企鹅类 2019-07-17 6 * 7 * @author L 8 * 9 */ 10 public class Penguin extends Pet { 11 private String gender; 12 13 public String getGender() { 14 return gender; 15 } 16 17 public void setGender(String gender) { 18 this.gender = gender; 19 } 20 21 public void showInfo() { 22 super.showInfo(); 23 System.out.println("性别是:" + this.gender); 24 } 25 26 public void swimming() { 27 System.out.println(this.getName() + "游泳中.........."); 28 this.setHealth(getHealth() + 3); 29 } 30 }
主人类
1 package com.pet; 2 3 /** 4 * tip:添加主人给宠物洗澡,添加主人带宠物玩耍,不同宠物玩耍的行为不同 5 * 主人类 2019-07-17 6 * 7 * @author L 8 * 9 */ 10 public class Master { 11 // 给宠物洗澡 12 public void wash(Pet pet) { 13 if (pet instanceof Dog) { 14 System.out.println("给" + pet.getName() + "洗澡...."); 15 pet.setHealth(pet.getHealth() + 3); 16 pet.setLove(pet.getLove() + 5); 17 } else if (pet instanceof Penguin) { 18 System.out.println("给" + pet.getName() + "洗澡...."); 19 pet.setHealth(pet.getHealth() + 3); 20 pet.setLove(pet.getLove() + 5); 21 } 22 } 23 24 // 跟宠物玩耍 25 public void play(Pet pet) { 26 if (pet instanceof Dog) { 27 Dog dog = (Dog) pet; 28 dog.playBall(); 29 } else if (pet instanceof Penguin) { 30 Penguin penguin = (Penguin) pet; 31 penguin.swimming(); 32 } 33 } 34 35 }
测试类
1 package com.pet; 2 /** 3 * tip:添加主人给宠物洗澡,添加主人带宠物玩耍,不同宠物玩耍的行为不同 4 * 测试类 5 * 2019-07-17 6 * @author L 7 * 8 */ 9 public class Test { 10 public static void main(String[] args) { 11 Master master=new Master(); 12 13 14 //狗狗 15 Dog dog=new Dog(); 16 dog.setName("狗子"); 17 dog.setStrain("八哥"); 18 dog.setHealth(80); 19 dog.setLove(80); 20 dog.showInfo(); 21 master.play(dog); 22 System.out.println("***一个小时之后……***"); 23 master.wash(dog); 24 25 System.out.println("——————————————————————"); 26 dog.showInfo(); 27 28 29 System.out.println("——————————————————————————————————————"); 30 31 32 //企鹅 33 Penguin penguin=new Penguin(); 34 penguin.setName("发财"); 35 penguin.setGender("公"); 36 penguin.setHealth(80); 37 penguin.setLove(70); 38 penguin.showInfo(); 39 master.play(penguin); 40 System.out.println("***一个小时之后……***"); 41 master.wash(penguin); 42 System.out.println(penguin.getName()+"表示刚游泳,拒绝洗澡!"); 43 penguin.setLove(penguin.getLove()-3); 44 45 System.out.println("——————————————————————"); 46 penguin.showInfo(); 47 } 48 }
测试结果