阅读量:137
Java基类可以实现多态。多态是面向对象编程的一个重要特性,它允许一个类的引用变量指向另一个子类的对象。在Java中,多态可以通过接口和继承实现。
当一个基类实现了多态时,可以通过以下方式实现:
- 定义一个基类(父类),包含一些公共方法和属性。
- 创建一个或多个继承自基类的子类,重写或扩展基类的方法。
- 使用基类类型的引用变量指向子类的对象。
- 通过基类引用变量调用子类的方法,实际执行的是子类中重写的方法。这就是动态绑定或多态的体现。
下面是一个简单的Java多态示例:
// 基类
class Animal {
public void makeSound() {
System.out.println("The animal makes a sound");
}
}
// 子类
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("The dog barks");
}
}
// 子类
class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("The cat meows");
}
}
public class Main {
public static void main(String[] args) {
Animal myAnimal = new Dog(); // 使用基类引用变量指向子类对象
myAnimal.makeSound(); // 输出:The dog barks
myAnimal = new Cat(); // 使用基类引用变量指向另一个子类对象
myAnimal.makeSound(); // 输出:The cat meows
}
}
在这个示例中,Animal 类是基类,Dog 和 Cat 类是继承自 Animal 的子类。通过基类引用变量 myAnimal 分别指向 Dog 和 Cat 类的对象,并调用 makeSound() 方法,实现了多态。