0

0

Java核心技术整理(四)---面向对象之多态

絕刀狂花

絕刀狂花

发布时间:2025-08-28 10:10:02

|

868人浏览过

|

来源于php中文网

原创

面向对象编程的三大特性包括封装、继承和多态。封装通过隐藏类的内部实现细节,允许在不影响使用的情况下修改类的内部结构,同时保护数据。外部仅能通过类提供的访问方法与其交互。继承用于重用父类代码,当两个类存在is-a关系时可以使用继承,这也为多态的实现奠定了基础。那么,什么是多态?多态的实现机制又是什么呢?

多态指的是一个引用(类型)在不同情境下的多种状态。换句话说,多态是指通过指向父类的指针,来调用在不同子类中实现的方法。

多态的重要性在于,它几乎是封装和继承的最终目标。这是我们探讨的最后一个概念,也是最关键的知识点。

多态的定义是,允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采取多种不同的行为方式。(发送消息即函数调用)。

实现多态的技术被称为动态绑定(dynamic binding),在执行期间判断所引用对象的实际类型,并根据其实际类型调用相应的方法。

立即学习Java免费学习笔记(深入)”;

多态的作用在于消除类型之间的耦合关系。

现实生活中,多态的例子比比皆是。例如,按下 F1 键这个动作,如果当前在 Flash 界面下,弹出的是 AS 3 的帮助文档;如果是在 Word 下,弹出的是 Word 帮助;在 Windows 下,则弹出的是 Windows 帮助和支持。同一个事件在不同的对象上会产生不同的结果。

多态存在的三个必要条件是:一、需要有继承;二、需要有重写;三、父类引用必须指向子类对象。

citySHOP多用户商城系统
citySHOP多用户商城系统

citySHOP是一款集CMS、网店、商品、分类信息、论坛等为一体的城市多用户商城系统,已完美整合目前流行的Discuz! 6.0论坛,采用最新的5.0版PHP+MYSQL技术。面向对象的数据库连接机制,缓存及80%静态化处理,使它能最大程度减轻服务器负担,为您节约建设成本。多级店铺区分及联盟商户地图标注,实体店与虚拟完美结合。个性化的店铺系统,会员后台一体化管理。后台登陆初始网站密匙:LOVES

下载

Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态 上述例子中的输出是什么呢?

答案是:ai , ni

分析如下:

在B类中没有对A类中的show方法进行重写,因此当调用a.show()时,执行的是父类A中的show方法。父类中的show方法调用了show2方法,但在调用时发现show2方法已被子类B重写,因此会调用子类B中的show2方法,输出"ai"。由此可见,当父类引用指向子类对象时,对父类中方法的调用会绑定到子类中重写后的方法上。如果子类没有重写该方法,则会直接调用父类中的方法,相当于直接从父类继承的方法。

场景假设:

假设一个主人养了猫和狗,猫和狗都有自己喜欢吃的东西。如果主人在喂它们时,需要先判断是猫还是狗,再判断它们分别喜欢吃什么,这会很麻烦。如果主人养了很多种动物,这种重复的判断会浪费很多时间。有什么方法可以让主人拿到一种食物就知道这是哪种动物的呢?

代码理解:

Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态Java核心技术整理(四)---面向对象之多态

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
go语言 面向对象
go语言 面向对象

本专题整合了go语言面向对象相关内容,阅读专题下面的文章了解更多详细内容。

58

2025.09.05

java面向对象
java面向对象

本专题整合了java面向对象相关内容,阅读专题下面的文章了解更多详细内容。

63

2025.11.27

java多态详细介绍
java多态详细介绍

本专题整合了java多态相关内容,阅读专题下面的文章了解更多详细内容。

27

2025.11.27

java多态详细介绍
java多态详细介绍

本专题整合了java多态相关内容,阅读专题下面的文章了解更多详细内容。

27

2025.11.27

java多态详细介绍
java多态详细介绍

本专题整合了java多态相关内容,阅读专题下面的文章了解更多详细内容。

27

2025.11.27

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1451

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1165

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

834

2023.08.01

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

44

2026.03.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
C# 教程
C# 教程

共94课时 | 10.9万人学习

550W粉丝大佬手把手从零学JavaScript
550W粉丝大佬手把手从零学JavaScript

共1课时 | 0.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号