4.
package com.bdqn.animal;
public interface Animal {
void shout();
}
package com.bdqn.animal;
public class Cat implements Animal {
@Override
public void shout() {
System.out.println("m m!");
}
}
package com.bdqn.animal;
public class Dog implements Animal {
@Override
public void shout() {
System.out.println("w w!");
}
}
package com.bdqn.animal;
public class Pig implements Animal {
@Override
public void shout() {
System.out.println("p p!");
}
}
package com.bdqn.animal;
public class Store {
public static Animal get(String choice){
if(choice.equalsIgnoreCase("dog")) {
return new Dog();
}else if(choice.equalsIgnoreCase("Cat")){
return new Cat();
}else {
return new Pig();
}
}
}
package com.bdqn.animal;
public class Test {
public static void main(String[] args) {
Animal a1 = Store.get("dog");
Animal a2 = Store.get("pig");
a1.shout();
a2.shout();
}
}
5.
package com.bdqn.animal2;
public class Dog extends Pet implements Eatable,FlyingDiscCatchable{
public Dog(String name, int health, int love) {
super(name, health, love);
}
@Override
public void catchingFlyDisc() {
System.out.println("狗狗在接飞盘");
}
@Override
public void eat() {
System.out.println("狗狗在吃骨头");
}
@Override
public void print() {
System.out.println("宠物的自白,我的名字是"+this.getName()+"健康值"+this.getHealth()+"与主人的亲密度"+this.getLove());
}
}
package com.bdqn.animal2;
public interface Eatable {
void eat();
}
package com.bdqn.animal2;
public interface FlyingDiscCatchable {
void catchingFlyDisc();
}
package com.bdqn.animal2;
public class Penguin extends Pet implements Eatable,Swimmable{
public Penguin(String name, int health, int love) {
super(name, health, love);
}
@Override
public void swim() {
System.out.println("企鹅在游泳");
}
@Override
public void eat() {
System.out.println("企鹅在吃鱼");
}
@Override
public void print() {
System.out.println("宠物的自白,我的名字是"+this.getName()+"健康值"+this.getHealth()+"与主人的亲密度"+this.getLove());
}
}
package com.bdqn.animal2;
public abstract class Pet {
String name;
int health;
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;
}
int love;
public Pet(String name, int health, int love) {
super();
this.name = name;
this.health = health;
this.love = love;
}
public void print() {
System.out.println("宠物的自白,我的名字是"+this.getName()+"健康值"+this.getHealth()+"与主人的亲密度"+this.getLove());
}
}
package com.bdqn.animal2;
public interface Swimmable {
void swim();
}
package com.bdqn.animal2;
public class Test {
public static void main(String[] args) {
Dog pp = new Dog("哈巴",100,99);
pp.print();
pp.eat();
pp.catchingFlyDisc();
Penguin pgn = new Penguin("大鸟",200,20);
pgn.print();
pgn.eat();
pgn.swim();
}
}