📜  Java程序的输出|第 25 组(多态)(1)

📅  最后修改于: 2023-12-03 15:02:06.513000             🧑  作者: Mango

Java程序的输出|第 25 组(多态)

Java是一种面向对象编程语言,它支持多态。多态是指对象可以根据其所属的类别,以不同的方式响应相同的消息。这意味着,如果你有一个基类,它有一个方法,你可以有多个继承该基类的子类,它们可以覆盖该方法并执行不同的逻辑,而在运行时,程序会自动根据对象的类型调用相应的方法。

实现多态的方法

要实现多态,需要定义一个基类和它的一个或多个子类,这些子类都继承基类,并在子类中重写基类中的方法。

以下是一个简单的示例程序,用于演示如何在Java中实现多态。

class Animal {
    public void printSound() {
        System.out.println("Animal");
    }
}

class Dog extends Animal {
    public void printSound() {
        System.out.println("Woof");
    }
}

class Cat extends Animal {
    public void printSound() {
        System.out.println("Meow");
    }
}

public class PolymorphismExample {

    public static void main(String[] args) {

        Animal[] animals = new Animal[2];
        animals[0] = new Dog();
        animals[1] = new Cat();

        for (Animal animal : animals) {
            animal.printSound();
        }

    }
}

在上面的示例中,我们定义了一个Animal类,并在该类中实现了一个名为printSound的方法。然后我们定义了两个子类,Dog和Cat,它们都继承了Animal类,并覆盖了printSound方法。

在PolymorphismExample类中,我们创建了一个Animal类型的数组,将Dog和Cat对象存储到该数组中。我们遍历该数组,并调用每个对象的printSound方法。由于Dog和Cat类都重写了printSound方法,它们会分别输出“Woof”和“Meow”。

这就是多态的工作原理:根据对象的类型调用相应的方法。

总结

多态是Java中的一个重要概念,允许程序员编写更灵活和可扩展的代码。通过定义基类和它的子类,以及重写基类的方法,可以在运行时根据对象的类型自动选择调用的方法。这为编写更复杂的应用程序提供了更多的灵活性,并使代码更易于理解和维护。