【JAVA】多态性特点

本文探讨了Java中的多态性概念,它是指一个对象在不同时刻可以表现出不同的形态。通过实例解释了多态性的前提条件(继承/实现、方法重写、父类引用指向子类对象)和成员访问的特点。同时,还介绍了多态中的向上转型和向下转型,并给出了相应的代码示例。
摘要由CSDN通过智能技术生成

多态(polymorphism)

多态: 同一个对象,在不同时刻表现出来的不同形态。
计算机运行时,相同的动作可能会在多个不同的类别对象,系统可根据不同类别中的对象,引发对应类别的方法,而有不同的行为。
举例:
通常我们说:猫 cat = new 猫();
多态中说:动物 animal = new 猫();
这里的猫在上面表现的是猫态,下面表现的是动物态,这就是多态。

多态的前提和体现:
a、有继承/实现关系
b、有方法重写
c、有父类引用指向子类对象[例:动物 animal = new new 猫();]

多态中成员访问特点:
成员变量: 编译看左边,执行看左边
成员方法: 编译看左边,执行看右边
为什么成员方法和成员变量不一样: 成员方法有重写,成员变量则没有。

多态中的转型:
向上转型 从子到父、父类引用指向子类对象:[动物 animal = new Cat();]
向下转型 从父到子、父类引用转为子类对象: [Cat c = (Cat)animal;]

e.g.:Animal(父类) AnimalOperator(操作方法类) Cat(子类) Dog(子类) ploy_Demo(main)
Animal(父类):

public class Animal {
   

    public void eat(
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值