继承和多态是面向对象程序设计中的两个重要概念,它们允许类之间的相互关联和重用,从而实现代码的重用和扩展。在软件工程中,继承和多态的实现通常是通过继承和多态关键字来实现的。
在这个项目中,我们将创建一个'Animal'类作为基类,以及'Dog'和'Cat'类作为子类,展示继承和多态的基本应用。
首先,我们创建一个'Animal'类作为基类,其中包含一个基方法speak()
,用于输出动物的叫声。
public class Animal {
public void speak() {
System.out.println("Animal sound");
}
}
接下来,我们创建一个'Dog'类作为子类,继承自'Animal'类,并重写了speak()
方法,使其输出"Woof!"。
public class Dog extends Animal {
public void speak() {
System.out.println("Woof!");
}
}
然后,我们创建一个'Cat'类作为子类,继承自'Animal'类,并重写了speak()
方法,使其输出"Meow!"。
public class Cat extends Animal {
public void speak() {
System.out.println("Meow!");
}
}
最后,我们创建一个测试类,使用多态关键字super
,将对象引用指向子类,从而实现多态。
public class Test {
public static void main(String[] args) {
Animal animal = new Dog();
animal.speak(); // 输出 "Woof!"
Animal animal2 = new Cat();
animal2.speak(); // 输出 "Meow!"
}
}
在这个例子中,我们创建了一个'Animal'类作为基类,以及'Dog'和'Cat'类作为子类。子类继承了基类的属性和方法,并可以重写这些方法。通过多态关键字super
,我们可以将对象引用指向子类,从而实现多态,输出不同的叫声。