首页 > 分享 > java多态性练习题

java多态性练习题

/*

需求说明:
主人和狗狗玩接飞盘游戏,狗狗健康值减少10,与主人亲密度增加5
主人和企鹅玩游泳游戏,企鹅健康值减少10,与主人亲密度增加5
提示:
Dog类添加catchingFlyDisc()方法,实现接飞盘功能
Penguin类添加swimming()方法,实现游泳功能
主人添加play(Pet pet)方法
如果pet代表Dog就玩接飞盘游戏
如果pet代表Penguin就玩游泳游戏

*/

Pet类

public class Pet {

private String name;

protected int health=100;

protected int love = 0;

public Pet() {

super();

}

public Pet(String name, int health, int love) {

super();

this.name = name;

this.health = health;

this.love = love;

}

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;

}

public int getLove() {

return love;

}

public void setLove(int love) {

this.love = love;

}

}

Dog类:

/**
 * 主人和狗狗玩接飞盘游戏,狗狗健康值减少10,与主人亲密度增加5
 * Dog类添加catchingFlyDisc()方法,实现接飞盘功能
 * @author Administrator
 *
 */

public class Dog extends Pet {

private String strain;

public Dog() {

super();

}

public Dog(String strain) {

super();

this.strain = strain;

}

public void catchingFlyDisc(){

System.out.println("小狗正在接飞盘!");

super.health =super.health-10;

System.out.println("健康值:" + super.health);

super.love = super.love +5;

System.out.println("亲密度:" + super.love);

}

public String getStrain() {

return strain;

}

public void setStrain(String strain) {

this.strain = strain;

}

}

Penguin类:

/**
 * 主人和企鹅玩游泳游戏,企鹅健康值减少10,与主人亲密度增加5
 * Penguin类添加swimming()方法,实现游泳功能
 * @author Administrator
 *

 */

public class Penguin extends Pet {

private String sex;

public Penguin() {

super();

}

public Penguin(String sex) {

super();

this.sex = sex;

}

public void swimming(){

System.out.println("企鹅正在接飞盘!");

super.health =super.health-10;

System.out.println("健康值:" + super.health);

super.love = super.love +5;

System.out.println("亲密度:" + super.love);

}

public String getSex() {

return sex;

}

public void setSex(String sex) {

this.sex = sex;

}

}

Master类:

public class Master {

private String name;

private int age;

public Master() {

super();

}

public Master(String name, int age) {

super();

this.name = name;

this.age = age;

}

public void play(Pet pet){

if(pet instanceof Dog){

Dog dog = (Dog)pet;

dog.catchingFlyDisc();

}else if(pet instanceof Penguin){

Penguin p = (Penguin)pet;

p.swimming();

}

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

测试类Test:

public class Test {

public static void main(String[] args) {

Master m = new Master();

m.play(new Dog());

m.play(new Penguin());

}

}


相关知识

java练习题
犬COMT基因单核苷酸多态性与金毛及拉布拉多猎犬胆小性情的关联研究
电子宠物游戏java
Java基于JAVA语言的宠物寄养管理(开题+源码)
编写Java程序模拟主人养宠物 java写一个宠物系统
【Java项目】java实战宠物领养系统项目
java测试类pet
java
用java写的小宠物游戏
[独有源码]java

网址: java多态性练习题 https://m.mcbbbk.com/newsview141785.html

所属分类:萌宠日常
上一篇: 2019年全国游泳竞赛规则培训班
下一篇: 第三届“皇家杯”宠物营养学知识竞