在本教程中,我们将通过示例学习多态,不同类型的多态以及如何在Java中实现它们。
多态是面向对象编程的重要概念。它只是意味着不止一种形式。也就是说,同一实体(方法,运算符或对象)在不同情况下的行为会有所不同。例如,
Java中的+运算符用于执行两个特定功能。与数字(整数和浮点数)一起使用时,将执行加法运算。
当我们将+运算符与字符串一起使用时,它将执行字符串连接。例如,
在Java中,多态可以分为两种类型:
在Java中,可以通过方法重写来实现运行时多态。
假设在父类及其子类中创建了相同的方法。在这种情况下,将要调用的方法取决于用于调用该方法的对象。例如,
输出:
要了解方法重写的工作原理,请访问Java中的方法重写。
在上面的示例中,该方法makeSound()在两个不同的类中具有不同的实现。当我们运行程序时
在程序执行期间确定将要调用的方法。因此,方法重写是运行时多态。
可以通过Java中的方法重载和运算符重载来实现编译时多态。
在Java类中,如果参数不同,则可以使用相同的名称创建方法。例如,
这在Java中称为方法重载。
让我们以方法重载为例。
输出:
在上面的程序中,displayPattern()方法已重载。
要了解有关方法重载的更多信息,请访问方法重载
Java中的某些运算符对不同的操作数的行为有所不同。例如,
让我们看看运算符如何在Java中重载。
Java中的+运算符用于执行两个特定功能。与数字(整数和浮点数)一起使用时,将执行加法运算。例如,
当我们将+运算符与字符串一起使用时,它将执行字符串连接。例如,
在像C ++这样的语言中,我们可以定义运算符以对不同的操作数进行不同的处理。但是,Java不支持用户定义的运算符重载。
多态允许我们创建一致的代码。例如,
在我们的方法重载示例中,我们使用相同的方法名称displayPattern()来显示两个不同的图案,以保持一致性。
Java中的print()方法也是多态性(方法重载)的一个实例。同样的方法用于打印不同类型的值,如char、int、String等。我们还可以使用相同的方法一次打印多个值。
在Java中,对象变量(实例变量)表示多态变量的行为。这是因为类的对象变量可以引用其类的对象及其子类的对象。例如,
输出:
在上面的示例中,我们创建了Animal类的对象变量a1。在这里,a1是一个多态变量。
这是因为,
这是Java中的向上转型示例。要了解更多信息,请访问Java向上转换和向下转换。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/java-jiao-cheng/17687.html