Java

java基类 方法能重载吗

小樊
81
2024-12-03 05:39:06
栏目: 编程语言

在Java中,基类的方法可以被重载。方法重载(Overloading)是指在同一个类中有多个同名方法,但它们的参数列表不同(参数的个数、类型或顺序不同)。方法重载允许你在不改变方法名的情况下,以相同的方法名提供不同的功能。

以下是一个Java示例,演示了如何在基类中重载方法:

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

    // 重载makeSound方法
    public void makeSound(String sound) {
        System.out.println("The animal makes a " + sound + " sound");
    }
}

class Dog extends Animal {
    // 重载makeSound方法
    @Override
    public void makeSound() {
        System.out.println("The dog barks");
    }

    @Override
    public void makeSound(String sound) {
        System.out.println("The dog barks a " + sound + " sound");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal myAnimal = new Animal();
        Animal myDog = new Dog();

        myAnimal.makeSound(); // 输出: The animal makes a sound
        myAnimal.makeSound("loud"); // 输出: The animal makes a loud sound

        myDog.makeSound(); // 输出: The dog barks
        myDog.makeSound("loud"); // 输出: The dog barks a loud sound
    }
}

在这个示例中,Animal类有两个重载的makeSound方法。Dog类继承了Animal类,并重载了这两个方法。这样,Dog类就可以根据需要调用相应的方法。

0
看了该问题的人还看了