目录
Come Out
建立包domain
TestAnimal.java
package domain;
//测试类
public class TestAnimal{
public static void main(String[] args){
Animal cat=new Cat("花花",6,70); //多态的使用
Animal dog=new Dog("来福",8,20); //多态的使用
System.out.print(cat.eat());
System.out.print("\n");
System.out.print(dog.eat());
}
}
Animal.java
package domain;
abstract class Animal {
String name;
int age;
public Animal() { //无参
}
public Animal(String name, int age) { //全参
this.name = name;
this.age = age;
}
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;
}
abstract public String eat(); //抽象方法:吃饭()
}
Cat.java
package domain;
class Cat extends Animal {
private int lovely; //可爱度
public Cat() {
}
public Cat(String name, int age, int lovely) {
super(name, age);
this.lovely = lovely;
}
public String CatchMouse() {
return ",它会抓老鼠";
}
public String eat() {
return "可爱度为"+lovely+ "% 的"+age + "岁" + name +"吃老鼠或者猫粮"+CatchMouse();
}
}
Dog.java
package domain;
class Dog extends Animal {
private double weight;
public Dog() {
}
public Dog(String name, int age, double weight) {
super(name, age);
this.weight = weight;
}
public String GuardTheEntrance() {
return ",它会看门";
}
public String eat() {
return "体重为"+weight+ "kg 的"+age + "岁" + name +"吃骨头或者狗粮"+GuardTheEntrance();
}
}