hello帮我用java解答下面这题:1、抽象Animal类的共同特征包括: 属性:名字name、颜色color、类型type哺乳类、非哺乳类; 抽象方法:吃东西eat发出叫声shout 非抽象方法:getNamesetNamegetColorsetColorgetTypesetType 2、定义Rabbit类继承Animal类类实现父类中的方法 3、定义Frog类继承Animal类类实现父类中的
- Animal类的定义如下:
public abstract class Animal {
private String name;
private String color;
private String type;
public Animal(String name, String color, String type) {
this.name = name;
this.color = color;
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public abstract void eat();
public abstract void shout();
@Override
public String toString() {
return "Animal [name=" + name + ", color=" + color + ", type=" + type + "]";
}
}
- Rabbit类的定义如下:
public class Rabbit extends Animal {
public Rabbit(String name, String color, String type) {
super(name, color, type);
}
@Override
public void eat() {
System.out.println(getName() + " is eating carrot.");
}
@Override
public void shout() {
System.out.println(getName() + " is shouting 'Hop hop!'");
}
@Override
public String toString() {
return "Rabbit [name=" + getName() + ", color=" + getColor() + ", type=" + getType() + "]";
}
}
- Frog类的定义如下:
public class Frog extends Animal {
public Frog(String name, String color, String type) {
super(name, color, type);
}
@Override
public void eat() {
System.out.println(getName() + " is eating insect.");
}
@Override
public void shout() {
System.out.println(getName() + " is shouting 'Ribbit ribbit!'");
}
public void swim() {
System.out.println(getName() + " is swimming in the pond.");
}
@Override
public String toString() {
return "Frog [name=" + getName() + ", color=" + getColor() + ", type=" + getType() + "]";
}
}
- 测试代码如下:
public class AnimalTest {
public static void main(String[] args) {
Animal rabbit = new Rabbit("Peter", "white", "mammal");
Animal frog = new Frog("Kermit", "green", "non-mammal");
rabbit.eat();
rabbit.shout();
System.out.println(rabbit);
frog.eat();
frog.shout();
frog.swim();
System.out.println(frog);
}
}
输出结果如下:
Peter is eating carrot.
Peter is shouting 'Hop hop!'
Rabbit [name=Peter, color=white, type=mammal]
Kermit is eating insect.
Kermit is shouting 'Ribbit ribbit!'
Kermit is swimming in the pond.
Frog [name=Kermit, color=green, type=non-mammal]
原文地址: https://www.cveoy.top/t/topic/buSq 著作权归作者所有。请勿转载和采集!