Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java中的多态

作者:刺眼的男ren   发布日期:2025-05-05   浏览:26

// 定义一个父类 Animal
class Animal {
    // 父类中的方法
    public void makeSound() {
        System.out.println("Some generic animal sound");
    }
}

// 定义一个子类 Dog,继承自 Animal
class Dog extends Animal {
    // 重写父类的方法
    @Override
    public void makeSound() {
        System.out.println("Bark");
    }
}

// 定义一个子类 Cat,继承自 Animal
class Cat extends Animal {
    // 重写父类的方法
    @Override
    public void makeSound() {
        System.out.println("Meow");
    }
}

// 测试多态的主类
public class PolymorphismExample {
    public static void main(String[] args) {
        // 创建父类类型的引用,指向不同的子类对象
        Animal myDog = new Dog();
        Animal myCat = new Cat();

        // 调用 makeSound 方法,实际调用的是子类中重写的方法
        myDog.makeSound(); // 输出: Bark
        myCat.makeSound(); // 输出: Meow
    }
}

解释说明:

  1. 父类 Animal:定义了一个通用的方法 makeSound(),表示动物发出声音。
  2. 子类 DogCat:分别继承了 Animal 类,并重写了 makeSound() 方法,以实现各自特有的行为。
  3. 多态性:在 PolymorphismExample 类中,我们创建了 Animal 类型的引用,但它们实际上指向的是 DogCat 对象。当我们调用 makeSound() 方法时,程序会根据实际对象的类型(即运行时类型)来决定调用哪个版本的方法。这就是多态的核心概念——同一个方法调用可以在不同对象上表现出不同的行为。

上一篇:java 判断文件夹是否存在

下一篇:java 随机

大家都在看

java连接数据库的代码

ubuntu 卸载java

java sort用法

java collections.sort

java file类的方法

java 判断

java时间数据类型

java 时间加一天

java demo

java 截取

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站