JavaSE传送门

JavaSE_Start

JavaSE-No.7.1——Java的继承(super关键字)

JavaSE-No.7.2——Java的继承(与组合)


目录

  • 1. 多态的概念
  • 2. 多态的实现条件
    • 重写
  • 3. 向上转型和向下转型
    • 3.1 向上转型
    • 3.2 向下转型
      • instanceof
  • 4.重写的设计规则
  • 5. 动态绑定和静态绑定
    • 5.1 动态绑定
    • 5.2 静态绑定
  • 6. 多态的优缺点

1. 多态的概念

通俗来说,就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。


总的来说:同一件事情,发生在不同对象身上,就会产生不同的结果。


2. 多态的实现条件

在java中要实现多态,必须要满足如下几个条件:

  1. 在继承体系下,完成向上转型
  2. 子类对父类的方法进行重写
  3. 通过父类的引用调用重写的方法

我们先创建一个父类Flower:

class Flower {private String name;private String color;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public Flower(String name, String color) {//构造方法this.name = name;this.color = color;}@Overridepublic String toString() {return "Flower{" +"name='" + name + '\'' +", color='" + color + '\'' +'}';}public void flowering() {System.out.println(name+"开花了												

JavaSE-No.8——Java三大特征之多态相关推荐

  1. Java的OOP三大特征之一——多态

    OOP(面对对象)三大特征之一--多态 What:多态性是指允许不同类的对象对同一消息作出响应,多态性包括参数化多态性和包含多态性,多态性语言具有灵活.抽象.行为共享.代码共享的优势,很好的解决了应用 ...

  2. Java面向对象特征之三 多态

    文章目录 Java面向对象特征之三 多态 1.多态的定义 2.多态的分类 静多态 动多态 3.向上造型 向上造型的好处 4.多态实例演示 5.多态的实现原理 6.多态的深入理解 6.1 静多态(静态绑 ...

  3. java三大特征之封装,继承,多态浅析

    java三大特性分别是封装,继承,多态. 封装:将对象的状态信息隐藏在对象内部,而外部无法直接访问,必须通过对象来访问(直观点就是将成员变量及方法写在class xxx{ }里面) 比如Person类 ...

  4. java的特征多态,java基础(三)—–java的三大特征之多态

    正文 面向工具编程有三大特征:封装.继续.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也珍爱了数据.对外界而已它的内部细节是隐藏的,露出给外界的只是它的接见方式. ...

  5. 由浅入深看Java三大特征之一:多态

    目录 一.向上造型 二.重载与重写 三.方法重写后的动态绑定 四.JVM的结构与常量池 五.java的方法调用方式 六.方法表与方法调用 七.接口调用 八.多态的依附性 多态 Think in jav ...

  6. Cris 的Python笔记(十一):面向对象三大特征之多态

    ''' Python 的多态:一个对象可以以不同的形态去呈现,实现方式相比 Java更加简单 因为动态语言的特点,Python 无法实现在代码指向前对方法参数进行检查,所以只要满足指定方法体的要求,任 ...

  7. 用孔子装爹学习java三大特性之多态

    孔子装爹例子学多态 一. 概述 1.1引入 1.2 定义 1.3 前提[重点] 2 例子一 2.1 父类 2.2 子类 2.3 启动类 2.4 打印 二..例子2:孔子装爹(只是个名字) 2.1 孔子 ...

  8. Java提高篇 —— Java三大特性之多态

    一.前言 面向对象编程有三大特性:封装.继承.多态. 封装:隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问 ...

  9. JAVA面向对象三大特征之一多态

    一.什么是多态? 同类型的对象,变现出的不同形态. 二.多态的表现形式 父类类型   对象名称   =   子类对象: 三.多态的前提 a.有继承/实现关系 b.有父类引用指引子类对象     例子: ...

最新文章

  1. tomcat进程意外退出的问题分析
  2. Python标准库04 文件管理 (部分os包,shutil包)
  3. 【题解】JSOIWC2019 Round4
  4. python2.7调用mysql存储过程并且返回结果
  5. Java-IO流之BufferedReader 和BufferedWriter的使用和原理
  6. 安利几个优质NLP开源项目!搜索、问答、情感分析…
  7. java中的equals拿什么鞋的_java.中equals的使用
  8. 【JavaScript】用Switch实现成绩等级判断
  9. python在工作之余能做什么_励志!北京大学保安英语词汇15000,工作之余学Python...
  10. 深入学习javascript:cookie
  11. Ubuntu安装五笔输入法
  12. C# .net 源码合集
  13. 计算机快速看图教程,CAD快速看图使用电脑版软件操作教程
  14. 老电脑装linux系统能变流畅吗,老电脑非常卡如何变流畅?高手教你把电脑变流畅的五种方法...
  15. 【转载】Markdown编辑器如何在标题上添加序号
  16. python span 抓取_python – Beautifulsoup获取span内容
  17. 在Windows系统中使用DIY Dodecad 2.1 分析祖源的方法
  18. BZOJ1776: [Usaco2010 Hol]cowpol 奶牛政坛
  19. 刚开始做软件测试,一般工资范围是多少?
  20. 日常学习——记使用POI多线程写Excel数据(续)

热门文章

  1. 企业中台最佳实践--灵魂十问(六)
  2. 自定义CDO并加入到现有CDO下
  3. EasyPlayerPro(Windows)流媒体播放器开发之接口设计
  4. ATF官方文档翻译(十八):中断管理框架( Interrupt Management Framework)-中断管理框架中的假设软件组件
  5. java easing_jQuery animate easing使用实例方法
  6. 华夏 JSH_ERP(一)前端启动
  7. 【1】疯壳开源蓝牙智能健康手表(心率血压血氧心电监测_可定制开发)_整机功能演示
  8. android版本5.0会咋样,Android5.0系统手机怎么样?安卓5.0手机最新体验
  9. 中文字体在CSS样式中font-family对应的英文名称
  10. 计算机系党总支书记,信息与计算机学院党总支召开2019年度党支部书记述职会...