您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
在面向对象编程中,重载方法(Overloading)和多态(Polymorphism)是两个重要的概念
class Calculator {
public int add(int a, int b) {
return a + b;
}
public double add(double a, double b) {
return a + b;
}
}
class Animal {
public void makeSound() {
System.out.println("The animal makes a sound");
}
}
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("The dog barks");
}
}
class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("The cat meows");
}
}
public class Main {
public static void main(String[] args) {
Animal myAnimal = new Dog();
myAnimal.makeSound(); // 输出 "The dog barks"
myAnimal = new Cat();
myAnimal.makeSound(); // 输出 "The cat meows"
}
}
在这个例子中,Dog
和 Cat
类都继承了 Animal
类,并重写了 makeSound()
方法。在 main
方法中,我们使用 Animal
类型的引用指向 Dog
和 Cat
类型的对象,并调用它们的 makeSound()
方法。这里体现了多态的概念,因为不同的对象对同一消息(makeSound()
)做出了不同的响应。
总结一下,重载方法在多态中的角色主要是为了提供接口的多样性,使得程序员可以用相同的函数名表示不同的功能。而多态则允许不同类的对象对同一消息做出响应,提高了代码的可扩展性和可维护性。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。