再次理解多态概念

简介: 再次理解多态概念

多态:指为不同数据类型的实体提供统一的接口。同一操作作用于不同的对象可以有不同的解释,产生不同的执行结果。

这是对于多态的解释,现在把这句话进行拆解理解它在代码上的体现,我们把第一句话“为不同数据类型的实体提供统一的接口。”在代码上的体现就是在下面静态方法中的switch选择结构中的为oper这个变量赋值的语句,就是在不同数据类型的实体提供了统一的接口,

public class OperationFactory {
    public static Operation createOperate(String Operate) throws Exception {
        Operation oper=null;
        switch(Operate){
            case "+":
                oper=new OperationAdd();
                break;
            case "-":
                oper=new OperationSub();
                break;
            case "*":
                oper=new OperationMul();
                break;
            case"/":
                oper=new OperationDiv();
                break;
            default:
                throw new Exception("没相关计算形式");
        }
        return oper;
    }
}

那么第二句话“同一操作作用于不同的对象可以有不同的解释,产生不同的执行结果。”


这里我们可以看到两张图片中都有一个getResult()方法,但是对应的方法实现都是不一样,比如Add这个类中的方法进行的是加法运算,而Sub这个类中的方法进行的是减法运算,当我们父类的引用指向不同的子类时,使用相同的方法得到的结果是不相同的。

相关文章
|
Python
Python高级进阶教程022期 pyqt5 qtimer实现图片轮播
Python高级进阶教程022期 pyqt5 qtimer实现图片轮播
341 0
kde
|
6天前
|
JSON Linux 数据格式
Docker镜像加速指南:手把手教你配置国内镜像源
配置国内镜像源可大幅提升 Docker 拉取速度,解决访问 Docker Hub 缓慢问题。本文详解 Linux、Docker Desktop 配置方法,并提供测速对比与常见问题解答,附最新可用镜像源列表,助力高效开发部署。
kde
3997 8
|
1天前
|
人工智能 安全 Java
|
6天前
|
JavaScript Ubuntu IDE
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
673 1
|
9天前
|
人工智能 定位技术 API
Dify MCP 保姆级教程来了!
大语言模型,例如 DeepSeek,如果不能联网、不能操作外部工具,只能是聊天机器人。除了聊天没什么可做的。
1028 13
|
4天前
|
人工智能 Java Spring
【保姆级图文详解】大模型、Spring AI编程调用大模型
【保姆级图文详解】大模型、Spring AI编程调用大模型
443 7
【保姆级图文详解】大模型、Spring AI编程调用大模型
|
3天前
typora免费版,激活方法,Typora使用教程
Typora是一款简洁高效的Markdown编辑器,支持即时渲染。本教程涵盖安装方法、文件操作、视图控制、格式排版、字体样式及Markdown语法,助你快速上手使用Typora进行高效写作。
744 0
|
15天前
|
Java Linux Maven
2025年最新版最细致Maven安装与配置指南(任何版本都可以依据本文章配置)
本文详细介绍了Maven的项目管理工具特性、安装步骤和配置方法。主要内容包括: Maven概述:解释Maven作为基于POM的构建工具,具备依赖管理、构建生命周期和仓库管理等功能。 安装步骤: 从官网下载最新版本 解压到指定目录 创建本地仓库文件夹 关键配置: 修改settings.xml文件 配置阿里云和清华大学镜像仓库以加速依赖下载 设置本地仓库路径 附加说明:包含详细的配置示例和截图指导,适用于各种操作系统环境。 本文提供了完整的Maven安装和配置
2025年最新版最细致Maven安装与配置指南(任何版本都可以依据本文章配置)
|
3天前
|
存储 人工智能 算法
【保姆级图文详解】RAG(检索增强生成)技术和流程:Embedding(语义理解) + 向量数据库(高效检索) + 召回 / 精排(筛选优化) + 混合策略(场景适配)
【保姆级图文详解】RAG(检索增强生成)技术和流程:Embedding(语义理解) + 向量数据库(高效检索) + 召回 / 精排(筛选优化) + 混合策略(场景适配)
331 5
|
2天前
|
数据采集 监控 数据挖掘
企业如何用Data Agent实现数据价值效率的飞跃
在数字化转型背景下,数据被视为“新时代的石油”,但多数企业仍面临数据价值难以高效挖掘的困境。文章深入剖析了当前数据分析中存在的“被动响应”模式及其带来的四大挑战,并提出通过Data Agent实现主动智能与数据分析民主化的新路径。Data Agent基于大语言模型和强化学习技术,具备理解、思考与行动能力,能够从“人找数据”转变为“数据找人”,推动数据洞察从专业人员走向全员参与。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问