Java (1)写一个类,名为Animal, 该类有两个私有属性,name(代表动物的名字),和legs(代表动物的腿的条数);要求为两个私有属性提供public的访问方法。并提供两个重载的构造方法,一个需要两个参数,分别用这两个参数给私有属性name和legs 赋值。另一个无参,默认给name赋值为AAA,给legs赋值为4:另要求在第二个构造方法中调用第一个构造方法。该类还有两个重载的move(方法,其中一个无参,在屏幕上输出一行文字:XXXMoving!!(XXX为该动物的名字);另一个需要一一个 int参数n,在屏幕上输出XXX Movingn米!!(2)写一个类Fish,继承自Animal 类,并提供个 构造方法, 该构造方法需要一-个参 数name,并给legs 赋默认值0;该类还要求覆盖Animal类中的无参move(方法,要求输出: XXX Swimming!!(3)写一个类Bird,继承自Animal类,并提供一个构造方法, 该构造方法需要一个参数name,并给legs赋默认值2;该类还要求覆盖Animal类中的无参move(方法,要求输出: XXX Flying!!(4)写一个类Zoo,定义一个主方法,在主方法中分别生成若干个Animal,Fish和Bird.并调用他们的属性和方法。
package homework;
public class HomeWork6 {
public static void main(String[] args) {
Animal d = new Animal();
Animal d1 = new Animal("小狗",2);
d.move();
d1.move(2);
System.out.println("-------------------------------------");
Fish f = new Fish("鲤鱼");
f.move();
System.out.println("-------------------------------------");
Bird b=new Bird("麻雀 ");
b.move();
}
}
class Animal{
private String name;
private int legs;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getLegs() {
return legs;
}
public void setLegs(int legs) {
this.legs = legs;
}
public Animal(String name, int legs){
this.name = name;
this.legs = legs;
}
public Animal(){
this("AAA", 4);
}
public void move(){
System.out.println(name + " Moving!!");
}
public void move(int n){
System.out.println(name + " Moving!!"+n+"米");
}
}
class Fish extends Animal{
public Fish (String name){
super(name,0);
}
public void move(){
System.out.println(super.getName()+ " Swimming!!");
}
}
class Bird extends Animal{
public Bird (String name){
super(name,2);
}
public void move(){
System.out.println(super.getName()+ " Flying!!");
}
}
