Java

java多态如何实现

小亿
81
2024-01-16 19:09:11
栏目: 编程语言

Java的多态是通过继承和方法重写来实现的。

首先,需要定义一个父类,该父类包含一个或多个方法。

然后,定义一个或多个子类,这些子类继承自父类,并重写父类中的方法。

父类中的方法可以使用关键字abstract来定义为抽象方法,这样子类就必须实现这些抽象方法。

在使用多态时,可以声明一个父类类型的变量来引用子类对象,然后通过该父类类型的变量来调用方法。这样,根据实际引用的子类对象的类型,可以调用子类中重写的方法。

以下是一个示例代码:

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

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

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

public class Main {
    public static void main(String[] args) {
        Animal animal1 = new Dog();
        Animal animal2 = new Cat();
        
        animal1.sound(); // 输出:"Dog barks"
        animal2.sound(); // 输出:"Cat meows"
    }
}

在上述代码中,Animal是父类,Dog和Cat是子类。Animal类中定义了一个sound()方法,而Dog和Cat类分别重写了该方法。

在main()方法中,animal1和animal2是Animal类型的变量,分别引用了Dog和Cat类的对象。通过这些变量调用sound()方法时,实际上会调用子类中重写的方法,而不是父类中的方法。这就是多态的效果。

0
看了该问题的人还看了