关键区别-重载vs Java重写
面向对象编程(OOP)是软件开发中的一个主要范例。它是一种用来设计程序的方法论类和对象。一个类是一个蓝图。它描述了对象中应该包含的内容。它定义了对象应该包含的属性和方法。因此,对象是类的实例。这些对象与其他对象通信。OOP的一个主要概念是多态性。它是一个对象以多种方式表现的能力。多态性分为重载和重写两个部分。本文讨论了这两者在Java.的关键的区别重载和重写之间的区别是重载是用不同的实现创建多个同名方法的能力,覆盖是为父类中已经存在的子类方法提供实现.
内容
1.概述及关键区别
2.什么是Java中的重载
3.什么是Java重写
4.Java中重载和重写的相似性
5.并列比较-表格形式的Java重载和重写
6.总结
什么是Java中的重载?
重载是用不同的实现创建多个同名方法的能力。请参考下面的Java代码。
根据上面的程序,类A包含两个同名的方法。第一种求和方法有两个参数。第二种求和方法有三个参数。当创建A类型的对象并调用sum(2,3)时,它将调用带两个参数sum(int A, int b)的sum方法,返回5。当创建A类型的对象并调用sum(2,3,4)时,它将调用另一个带三个参数的sum方法,即sum(int A, int b, int c),返回9。
方法名相同,但参数数量不同。可以观察到同一个对象的行为不同。这个概念被称为重载。它也被称为静态绑定或编译时多态.
还可以使用不同的数据类型进行重载。请参考下面的Java代码。
根据上述程序,类A由两个同名方法组成。sum(int a, int b)方法接收两个整数值。sum(double a double b)接收两个双精度值。当创建类型A的对象并调用sum(2,3)时,它将调用sum(int A, int b)并返回值5。当调用sum(3.4, 5.6)时,它会调用sum(double a double b)并返回值9.0。在本例中,方法名称相同,但变量类型不同。这也是超载。
什么是Java重写?
在Java中,可以用已有的类构建子类。与其从头创建新类,还不如使用已有类的属性和方法。现有的类是超类,派生的类是子类。当子类为已经在父类中的方法提供实现时,它被称为重写。参考下面的Java程序。
根据上面的程序,类A有一个方法display()。类B从类A扩展而来,因此类B可以访问类A的属性和方法。类B具有具有特定实现的方法display()。当创建类型为A的对象并调用显示方法时,它将给出输出B。尽管类A有一个显示方法,但它被类B的显示方法覆盖。子类实现了父类中已经存在的方法。
这个概念是多态性的一种类型,称为重写。它也被称为后期绑定,动态绑定,运行时多态.
在Java中重载和重写有什么相似之处?
- 两者都是多态性的类型。
- 在重载和重写中,方法有相同的名称。
在Java中重载和重写之间的区别是什么?
Java中的重载vs重写 |
|
Java中的重载是用不同的实现创建多个同名方法的能力。 | Java中的重写是为父类中已经存在的方法在子类方法中提供特定的实现。 |
参数 | |
在重载中,方法名称相同,但参数数量不同或参数类型不同。 | 在重写中,方法具有相同的名称,且参数必须相同。 |
主题 | |
重载发生在类内部。 | 重写发生在具有继承关系的两个类中。 |
同义词 | |
重载称为编译时多态性。 | 重写称为运行时多态性。 |
总结——重载vs Java重写
多态性是面向对象编程中的一个重要概念。它为对象提供了以多种方式运行的能力。这可以是重载或重写。重载是编译时多态性,覆盖是运行时多态性。它们在软件应用程序开发中很有用。override和overloading之间的区别在于,重载是用不同的实现创建多个同名方法的能力,而override是为父类中已经存在的方法在子类方法中提供特定的实现。可以在Java中实现重载和重写。
下载Java中的PDF重载vs重写
你可以下载这篇文章的PDF版本,并根据引用说明离线使用它。请按此下载PDF版本Java中重载和重写的区别
参考:
1. tutorialspoint.com。“Java压倒一切”。这一点.可以在这里
2.Java中的方法重载- Javatpoint。可以在这里
3.“Java中的方法重写- javatpoint。”可以在这里
留下一个回复