初识面向对象第三特征-多态 | 带你学《Java面向对象编程》之四十七

简介: 本节主要介绍了面向对象的第三大特征-多态性,并简要说明了实现方法多态性的实现模式,介绍了对象多态性这个概念。

上一篇:千字走进注解的领域 | 带你学《Java面向对象编程》之四十六
【本节目标】
通过阅读本节内容,你将初步了解多态性的意义,并认识到在以往的编程过程中处处体现着多态的思想,初步了解实现多态性的几种模式。
多态性是面向对象中的第三大主要特征,多态性是在继承性的基础之上扩展出来的概念,也就是说可以实现父子类之间的互相转换处理。

多态性的基本概念

在Java之中对于多态性有两种实现的模式:

  • 方法的多态性:

    • 方法的重载:同一个方法名称可以根据传入的参数的类型或个数的不同实现不同功能的执行
    • 方法的覆写:同一个方法可能根据使用子类的不同有不同的实现

方法的重载:

class Message {
public void print() {
    System.out.println(“www.mldn.cn”) ;  
}
public void print(String str) {
    System.out.println(str) ;
}
}

方法的覆写:

class Message {
    public void print() {
        System.out.println(“www.mldn.cn”) ;  
    }
}
class DataBaseMessage extends Message {
    public void print() {
        System.out.println(“Oracle数据库连接信息…..”) ;
    }
}
class NetworkMessage extends Message {
    public void print() {
        System.out.println(“网络连接信息…..”) ;
    }
}
  • 对象的多态性:父子实例之间的转换处理,有两种模式:

    • 对象向上转型:父类 父类实例 = 子类实例、自动完成转换 ;
    • 对象向下转型:子类 子类实例 = (子类)父类实例、强制完成转换。

从实际的转型处理来讲,大部分情况下考虑最多的一定是对象的向上转型、对于对象的向下转型往往都在使用子类特殊功能(子类可以对父类进行功能扩充)的时候要采用向下转型,还有一些时候是不会考虑转型的(String类)。
想学习更多的Java的课程吗?从小白到大神,从入门到精通,更多精彩不容错过!免费为您提供更多的学习资源。
本内容视频来源于阿里云大学

下一篇:领略多态的魅力-对象向上转型 | 带你学《Java面向对象编程》之四十八
更多Java面向对象编程文章查看此处

相关文章
|
9天前
|
JavaScript 前端开发 Java
还不明白面向对象? 本文带你彻底搞懂面向对象的三大特征(2024年11月Java版)
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。如果你从我的文章中受益,欢迎关注我,我将持续更新更多优质内容。你的支持是我前进的动力!🎉🎉🎉
还不明白面向对象? 本文带你彻底搞懂面向对象的三大特征(2024年11月Java版)
|
27天前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
15 2
|
2月前
|
存储 Java 测试技术
Java零基础-多态详解
【10月更文挑战第10天】Java零基础教学篇,手把手实践教学!
24 4
|
2月前
|
Java 编译器 程序员
Java多态背后的秘密:动态绑定如何工作?
本文介绍了Java中多态的实现原理,通过动态绑定和虚拟方法表,使得父类引用可以调用子类的方法,增强了代码的灵活性和可维护性。文中通过具体示例详细解析了多态的工作机制。
44 4
|
2月前
|
Java
java继承和多态详解
java继承和多态详解
43 5
|
2月前
|
存储 Java 测试技术
Java零基础-多态详解
【10月更文挑战第1天】Java零基础教学篇,手把手实践教学!
29 1
|
2月前
|
安全 Java 编译器
【一步一步了解Java系列】:重磅多态
【一步一步了解Java系列】:重磅多态
20 3
|
2月前
|
SQL 安全 Java
JAVA代码审计SAST工具使用与漏洞特征
JAVA代码审计SAST工具使用与漏洞特征
55 2
|
3月前
|
SQL 安全 Java
JAVA代码审计SAST工具使用与漏洞特征
JAVA代码审计SAST工具使用与漏洞特征
71 1
|
2月前
|
存储 Java 程序员
Java基础-面向对象
Java基础-面向对象
17 0
下一篇
无影云桌面