java博客作业期中:多态

本文介绍了Java编程中的多态概念,强调了多态性体现在同一行为的不同表现形式。讨论了实现多态的三个关键条件:继承、重写和父类引用指向子类对象。通过实例展示了如何通过子类对象调用重写的方法,并解释了Java中动态绑定的行为。文章最后提供了一个简单的代码示例,演示了不同水果类(Apple和Banana)如何通过父类引用调用重写的方法。
摘要由CSDN通过智能技术生成

java博客作业期中:多态

什么是多态?

多态是同一个行为具有多个不同表现形式或形态的能力。多态性是对象多种表现形式的体现。

java中的多态?

多态就是同一个接口,使用不同的实例而执行不同操作。

一、多态的特点

多态存在的三个必要条件

继承
重写
父类引用指向子类对象:Parent p = new Child();//Parent父类,Child子类

为了多态而存在的虚函数

Java 中其实没有虚函数的概念,它的普通函数就相当于 C++ 的虚函数,动态绑定是Java的默认行为。
(虚函数:虚函数是在类中被声明为virtual的成员函数,当编译器看到通过指针或引用调用此类函数时,对其执行晚绑定,即通过指针(或引用)指向的类的类型信息来决定该函数是哪个类的。)

二、多态的使用

重写

由于之前的学习,已知方法的重写。也就是子类能够重写父类的方法。当子类对象调用重写的方法时,调用的是子类的方法,而不是父类中被重写的方法。要想调用父类中被重写的方法,则必须使用关键字 super。

父类引用子类对象调用子类重写的方法例子:
package Shuiguo;

public class shuiguo{ // 父类
public void name() {
System.out.println(“水果”);
}

}
class Apple extends shuiguo{//子类
@Override
public void name() {
System.out.println(“apple”);//重写父类的方法
}
}
class Banana extends shuiguo{//子类
@Override
public void name() {
System.out.println(“banana”);//重写父类的方法
}
}

package Shuiguo;

public class test {

static void shuiguoName(shuiguo a) { //父类引用子类对象调用子类重写
	a.name();
}

public static void main(String[] args) {

	Apple apple = new Apple();
    shuiguoName(apple);
}

}

结果 :
apple

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值