用java 编写一个类Animal,描述动物的属性和行为,通过继承Animal类定义Bird类、Fish类,分别描述鸟类 和鱼类的属性和行为,具体要求如下:(1)Animal类定义属性name、color、foot Nurnber,描述动物的名称、颜色、脚的只数;定义成员方法showInfo0,用于输出动物的属性信息;定义成员方法move0,用于描述动物如何行走(输出“可以通过飞、跑、游等方式移动身体〞;(2)通过继承Animal定义Bird类,改写 父类的move方法(输出“通过飞来移动身体”),增加一个方法nest0用于描述在哪里筑巢;(3)通过继承 Animal定义Fis类,改写父类的move方法(输出"通过游来移动身体”,增加一个属性length,用于描述 鱼的身长,改写父类的shorolnfo0方法,除了输出 narme、color、foot Number属性,还要输出鱼的身长;(4)编写测试类,分别创建上述3个类的对象,并给对象的所有属性赋值,调用对象的所有方法。
时间: 2023-06-27 22:05:10 浏览: 148
以下是Animal、Bird、Fish及测试类的代码:
Animal类:
```
public class Animal {
protected String name;
protected String color;
protected int footNumber;
public Animal(String name, String color, int footNumber) {
this.name = name;
this.color = color;
this.footNumber = footNumber;
}
public void showInfo() {
System.out.println("名称:" + name + ",颜色:" + color + ",脚的只数:" + footNumber);
}
public void move() {
System.out.println("可以通过飞、跑、游等方式移动身体");
}
}
```
Bird类:
```
public class Bird extends Animal {
public Bird(String name, String color, int footNumber) {
super(name, color, footNumber);
}
@Override
public void move() {
System.out.println("通过飞来移动身体");
}
public void nest() {
System.out.println("在树上筑巢");
}
}
```
Fish类:
```
public class Fish extends Animal {
private double length;
public Fish(String name, String color, int footNumber, double length) {
super(name, color, footNumber);
this.length = length;
}
public double getLength() {
return length;
}
public void setLength(double length) {
this.length = length;
}
@Override
public void showInfo() {
super.showInfo();
System.out.println("身长:" + length);
}
@Override
public void move() {
System.out.println("通过游来移动身体");
}
}
```
测试类:
```
public class AnimalTest {
public static void main(String[] args) {
Animal animal = new Animal("狗", "黄色", 4);
animal.showInfo();
animal.move();
Bird bird = new Bird("鹦鹉", "彩色", 2);
bird.showInfo();
bird.move();
bird.nest();
Fish fish = new Fish("金鱼", "红色", 0, 10);
fish.showInfo();
fish.move();
fish.setLength(15);
fish.showInfo();
}
}
```
运行结果:
```
名称:狗,颜色:黄色,脚的只数:4
可以通过飞、跑、游等方式移动身体
名称:鹦鹉,颜色:彩色,脚的只数:2
通过飞来移动身体
在树上筑巢
名称:金鱼,颜色:红色,脚的只数:0
身长:10.0
通过游来移动身体
名称:金鱼,颜色:红色,脚的只数:0
身长:15.0
```
阅读全文