Java 中对于polymorphism:多态的理解

本文介绍了Java中的多态性概念,通过一个单位中职工、管理者和领导的例子来阐述多态的含义。示例代码展示了一个Manager类继承自Employee类,子类对象可以作为父类对象使用。同时,文章提到了一个牛客网的编程题目,解释了运行时多态性的表现,指出在子类尚未初始化时,会先在父类中寻找并调用方法。
摘要由CSDN通过智能技术生成

面向对象三大特性:封装,继承和多态。

而其中最难理解的就是多态。

下面是个人再看了一些书籍,和一些博主的资料整理:

 把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化。赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。也就是说,父亲的行为像儿子,而不是儿子的行为像父亲。(这句话是我理解第三种方法的关键,请仔细阅读理解)

        对象的引用型变量是具有多态性的,因为一个引用型变量可以指向不同形式的对象,即:子类对象作为父类对象来使用。

举一个例子,在一个单位中,有职工employee,职工中又有少数是管理者manager,管理者中又有一部分是领导。若小明是管理者manager类的对象,他也可以被看做是employee的对象,即他也可以被看做是一个职工,他同时具备着职工的所有属性。


代码如下:

  1. public class testDuoTai {
  2. public static void main(String[] args) {
  3. Employee emp1= new Employee( "小明", 23, 1000); //emp1是Employee的对象
  4. System.out.println(emp1.getInfo());
  5. Employee emp2= new Manager( "小明", 23, 1000, 5000); //注意此处emp2是Manager类的对象
  6. System.out.println(emp2.getInfo());
  7. }
  8. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值