在Java中,多态是通过继承、接口和方法重写实现的。以下是实现多态的几个关键步骤:
public class Animal { public void makeSound() { System.out.println("The animal makes a sound"); } } public class Dog extends Animal { @Override public void makeSound() { System.out.println("The dog barks"); } } public 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(); // 使用Dog类对象作为Animal类型的引用 myAnimal.makeSound(); // 输出 "The dog barks" myAnimal = new Cat(); // 使用Cat类对象作为Animal类型的引用 myAnimal.makeSound(); // 输出 "The cat meows" } } 在这个例子中,我们定义了一个名为Animal的基类,其中包含一个名为makeSound的方法。然后,我们创建了两个子类Dog和Cat,它们分别继承自Animal类,并重写了makeSound方法。在主类Main中,我们使用Animal类型作为引用,并将Dog和Cat类的对象分别赋值给它。当我们调用makeSound方法时,Java运行时系统会根据实际的对象类型(Dog或Cat)来选择合适的方法实现,这就是多态的体现。