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

java的多态

作者:一岁就很帅   发布日期:2025-04-23   浏览:27

// 定义一个父类 Animal
class Animal {
    // 定义一个方法 sound,子类可以重写该方法
    public void sound() {
        System.out.println("This is a generic animal sound.");
    }
}

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

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

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

        // 调用子类重写后的方法
        myDog.sound(); // 输出: Dog barks: Woof woof!
        myCat.sound(); // 输出: Cat meows: Meow meow!
    }
}

解释说明:

  1. 父类 Animal:定义了一个通用的方法 sound(),所有动物都可以发出声音,但具体的实现由子类决定。
  2. 子类 DogCat:分别继承了 Animal 类,并重写了 sound() 方法,提供了各自特有的实现。
  3. 多态性:在 PolymorphismExample 类中,使用 Animal 类型的引用指向不同的子类对象(DogCat),并通过调用 sound() 方法展示了多态性。即同一个方法调用在不同的对象上表现出不同的行为。

上一篇: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 中文站