Java面向对象编程:抽象类与继承案例 - 猫和狗
// Animal类 public abstract class Animal { private String name; private int age; private String color;
public Animal(String name, int age, String color) {
this.name = name;
this.age = age;
this.color = color;
}
public abstract void shout();
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getColor() {
return color;
}
}
// Cat类 public class Cat extends Animal { public Cat(String name, int age, String color) { super(name, age, color); }
@Override
public void shout() {
System.out.println('喵喵喵');
}
}
// Dog类 public class Dog extends Animal { public Dog(String name, int age, String color) { super(name, age, color); }
@Override
public void shout() {
System.out.println('汪汪汪');
}
}
// 测试类 public class Test { public static void main(String[] args) { Animal animal1 = new Cat('小花', 2, '白色'); Animal animal2 = new Dog('小黑', 3, '黑色');
System.out.println(animal1.getName() + '的叫声:');
animal1.shout();
System.out.println(animal2.getName() + '的叫声:');
animal2.shout();
}
}
原文地址: https://www.cveoy.top/t/topic/nQJE 著作权归作者所有。请勿转载和采集!