多态性 - 只需两句话即可定义[关闭]

2023-11-27

我看过其他定义和解释,但没有一个让我满意。我想看看是否有人可以在不使用任何代码或示例的情况下最多用两句话来定义多态性。我不想听到“所以你有一个人/汽车/开罐器......”或者这个词是如何衍生的(没有人对你知道 Poly 和 morph 的含义印象深刻)。如果您非常了解什么是多态性并且精通英语,那么您应该能够用简短但密集的定义来回答这个问题。如果您的定义准确地定义了多态性,但过于密集以至于需要多次阅读,那么这正是我正在寻找的。

为什么只有两句话?因为定义简短而明智。解释很长,包含示例和代码。在这里查看解释(这些页面上的答案不能满足我的问题):

多态、重写、重载
尝试尽可能简单地描述多态性

我为什么要问这个问题?因为我被问到了同样的问题,我发现我无法给出一个令人满意的定义(按照我的标准,这是相当高的)。我想看看这个网站上是否有任何伟大的头脑可以做到这一点。

如果你确实达不到两句话的要求(这是一个很难定义的主题),那么你过去也没关系。这个想法是有一个定义,实际上定义了多态性是什么,但没有解释它的作用或如何使用它(明白其中的区别吗?)。


多态性允许表达某种契约,可能有多种类型以不同的方式实现该契约(无论是否通过类继承),每种方式都根据自己的目的。代码using该合同不应该(*)关心涉及哪个实现,只需遵守该合同即可。

(*) 无论如何,在理想情况下 - 显然调用代码通常非常有意地选择了适当的实现!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多态性 - 只需两句话即可定义[关闭] 的相关文章

  • 收到警告“标头不能包含多个标头,检测到新行”

    我正在用 oops 进行编码 以便用 PHP 上传图像 但是提交图片后却出现警告 标题不能包含多个标题 检测到新行 下面是我的函数 它给出了错误 public function ft redirect query if REQUEST UR
  • 为什么需要在 Python 方法中显式使用“self”参数? [复制]

    这个问题在这里已经有答案了 当在 Python 中的类上定义方法时 它看起来像这样 class MyClass object def init self x y self x x self y y 但在其他一些语言中 例如 C 您可以使用
  • Java中接口作为方法参数

    前几天去面试 被问到了这样的问题 问 反转链表 给出以下代码 public class ReverseList interface NodeList int getItem NodeList nextNode void reverse No
  • 类型约束

    我有以下类层次结构 class Header IEnumerable
  • 苹果、橙子和指向最派生的 C++ 类的指针

    假设我有一堆水果 class Fruit class Apple public Fruit class Orange public Fruit 以及一些作用于所述水果的多态函数 void Eat Fruit f Pesticide p vo
  • C# 中的接口继承

    我试图解决我在编写应用程序时遇到的相当大的 对我来说 问题 请看这个 为了简单起见 我将尝试缩短代码 我有一个名为的根接口IRepository
  • 克隆和引用传递问题

    所以在过去的几天里 我一直在绞尽脑汁地试图让一个类能够正确克隆 问题是克隆不会删除 重做任何引用传递 结果是 主数据对象仍然作为引用传递 从而完全抵消了克隆的效果 这是问题的简化版本 class my class private data
  • RankN多态性和令人发指的克莱斯利之箭

    我不明白为什么 demobind1 的定义会产生一些编译器错误 它看起来像一个愚蠢的翻转 但不知何故 LANGUAGE GADTs LANGUAGE RankNTypes ScopedTypeVariables TypeOperators
  • 这应该被称为对象切片的某种特殊情况吗?

    假设我有课Derived派生自类Base然而sizeof Derived gt sizeof Base 现在 如果分配一个数组Derived像这样 Base myArray new Derived 42 然后尝试访问n第一个对象使用 doS
  • 当需要不同数量和类型的参数时如何创建操作委托列表

    我们有一组大约两打的类 它们继承自具有抽象 Validate 方法的基类 当然 每个类都有不同的验证需求 但它们之间的不同组合需要规则 因此 正如您可以想象的那样 这导致了大量代码重复 例如 A 类需要规则 1 3 6 和 9B 类需要规则
  • Python OO程序结构规划

    我是 OOP 的初学者 我想创建一个包含三个类 A B 和 C 的程序 该类的每个实例都由一组特征 Achar1 Achar2 等定义 该程序应该创建uses由 A 元素 B 元素和 C 元素以及开始日期和结束日期组成 A 和 B 都有子类
  • 拦截对对象属性的 __getitem__ 调用

    问题 我怎样才能拦截 getitem 调用对象属性 解释 所以 场景如下 我有一个对象将类似字典的对象存储为属性 每次 getitem 该属性的方法被调用 我想拦截该调用并根据键对获取的项目进行一些特殊处理 我想要的看起来像这样 class
  • 重写方法时,我的自定义代码应该位于 super(base) 之前还是之后

    重写方法时 我的自定义代码应该在对父类的超级 基 调用之前还是之后 这里有 3 个选择 如果你想执行代码之前的基本行为 然后之前调用它 如果你想执行代码后的基本行为 然后调用它 如果你想完全覆盖基本行为 根本不调用它 重要的是还检查您的 A
  • Push 和 Pop 对堆栈意味着什么?

    长话短说 我的讲师很糟糕 他通过投影仪向我们展示前缀堆栈的中缀 他的大影子挡住了一切 所以我错过了重要的东西 他指的是push和pop push 0 pop x 他举了一个例子 但我根本看不出他是如何得到答案的 2 3 2 1 5 4 1
  • UML 只能用于面向对象吗?

    目前 在我的论文期间 存在着关于 UML 是否仅用于 OO 开发 的激烈争论 我从一些来源进行了搜索 其中给出了很多关于它的论点 就我自己而言 我相信并非所有 UML 图都是专门为 OO 系统 软件开发而制作的 即 状态图 因此 我希望得到
  • 如何设计/规划Web应用程序开发?

    我有兴趣学习如何在多个开发团队场景中设计 规划 Web 应用程序开发 担任 项目经理 主管 的角色 成功的 Web 应用程序开发需要哪些 文档 需要哪些 UML 图以及需要到什么程度 在设计 计划阶段 是否需要根据用例对每个类进行图表化 类
  • 动态重新定义 PHP 类函数?

    我试图弄清楚如何动态导入大量 PHP 类函数 例如 class Entity public function construct type require once type functions php person new Entity
  • C#/.NET 3.5:转换扩展通用列表的对象

    我通过带有返回接口类型的方法的外观公开 API 并且在 C NET 3 5 中遇到了通用列表和继承的问题 我有两个接口 IMyList 实现 IList IMyItem 和三个类 MyList 实现 IMyList 扩展 List MyOt
  • 为二叉树实现 IntoIterator

    我正在尝试构建一棵二叉树并编写一个迭代器来遍历树中的值 当为我的树节点实现 IntoIterator 特征时 我遇到了生命周期问题 src main rs 43 6 43 8 error the lifetime parameter a i
  • Python 中的 @staticmethod 与 @classmethod

    方法和方法有什么区别装饰的 https peps python org pep 0318 with staticmethod http docs python org library functions html staticmethod和

随机推荐

  • Flask-SQLAlchemy 中连接后的过滤

    我有两张桌子 location and country 正在尝试查询 在我的烧瓶应用程序中由以下模型表示 from sqlalchemy import Column DateTime ForeignKey Integer Numeric S
  • 将 URL 中的 HTTP 参数与 Android Intent Filter 相匹配

    我正在尝试组合一个意图过滤器 以便在浏览器中访问某个 HTML URL 时启动我的应用程序 当它是标准网址 例如 www stonyx com 时 我这样做没有任何问题 但是 我需要将 URL 与 HTTP 参数 如 www stonyx
  • 使用 Visual studio 2013 Professional 的 Windows Phone 8 应用程序 [重复]

    这个问题在这里已经有答案了 在将 Visual studio 2010 升级到 2012 2013 的混乱中 2013 年是创建 Windows 商店应用程序的唯一选择 但没有给出对 Windows Phone 应用程序开发的支持的清晰图片
  • 在java中将二维二进制矩阵转换为黑白图像

    我是java新手 我现在有只有 1 和 0 的 2D 二进制矩阵 我想将其保存为具有相同宽度和高度的jpg图像 黑白 我怎么能意识到这一点呢 我尝试了下面的代码但失败了 说 java lang IllegalArgumentExceptio
  • 如何建立 .NET 开发树? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 如何建立 NET 开发树 我使用这样的结构 projectname config where I put the configuration files doc where I put a
  • 当我输入“cd ~”时,“~”是什么目录?

    我刚开始使用 SSH 但是当我登录时 我最终会进入目录 通常与 FTP 进入时的目录相同 我仍然可以转到 但我不知道 是什么意思 家 它与 的关系在哪里 或者我怎样才能找到 是当前登录用户主目录的别名 要找出它到底在哪里 请输入pwd 代表
  • 两个文件包含 main() Visual Studio 的定义?

    我在 Visual Studio 2008 专业版中创建了一个项目 该项目为每个作业包含一个 cpp 文件 如下所示 Source Files 233 cpp test cpp 每个文件都包含 main 的定义 操作 CTRL F5 Err
  • 更新视图控制器之间的状态栏样式

    In my info plist 我有的文件View controller based status bar appearance set to YES 我有一个FirstViewController状态栏隐藏的地方 In my Secon
  • 如何从 lxml 获取原始 XML?

    我使用以下代码来定位 div parser etree HTMLParser tree etree parse StringIO page parser div tree xpath div class content 0 我唯一的问题是
  • clang 完成不起作用

    我为 vim 安装了 clang complete 但它不起作用 例如 当我输入std 在使用 vim 的 c 文件中 vim 窗口的底部显示 User defined completion U N P Pattern not found
  • java.lang.ClassNotFoundException:TopologyMain

    我正在尝试向本地风暴集群提交一个简单的字数统计拓扑 首先 我尝试使用 Maven 然后使用 Storm 命令行客户端 我使用 eclipse 创建了 JAR 文件 但是 它抛出主类未找到异常 谁能告诉我可能是什么问题 我在下面附上代码和异常
  • 如何在R中summary中获取群的众数

    我想比较两个不同索赔付款人的 CPT 代码的成本 两者都有平价和非平价提供商 我在用dplyr and modeest mlv 但它没有按预期工作 这是一些示例数据 source CPTCode ParNonPar Key net paid
  • 无法在 Firebase 控制台中创建新项目

    当我在 Firebase 控制台中创建项目时 收到错误 您已超出可以创建的免费 G oogle 项目的最大数量 请尝试在 Google API 控制台中删除未使用的项目或请求增加项目限制 我从 Firebase 控制台中删除了未使用的项目
  • 将点捕捉到一条线

    我有两个 GPS 坐标 它们连接在一起形成一条线 我还有一个 GPS 点 该点靠近该线 但从未完全在线上 我的问题是 如何找到沿线到给定点最近的点 游戏开发者对此有一个答案 它是用 C 编写的 但应该很容易移植 哪个CarlG has 好心
  • Malloc 和 scanf

    我对几种脚本语言相当有能力 但我最终强迫自己学习原始 C 我只是在玩一些基本的东西 现在是 I O 如何分配堆内存 在分配的内存中存储字符串 然后将其吐出 这就是我现在所拥有的 我怎样才能让它正常工作 include
  • 将嵌套的 JSON 解析为 R 中的数据帧

    我在处理非常讨厌的嵌套 JSON 时遇到了麻烦 格式是这样的 matches matchId 1 region BR participants participantId 0 teamId 200 stats winner true cha
  • Symfony2 - 仅限匿名用户而非用户访问登录和注册页面

    我有一个带有登录表单的网站 成功登录后 我被重定向到索引 但是当我单击后退按钮时 它仍然让我查看登录表单 这不太好 我希望只有匿名查看者才能访问登录表单 而已经登录的用户则无法访问 在 symfony2 中有一个简单的方法可以做到这一点吗
  • 没有可编译的体系结构(ONLY_ACTIVE_ARCH=YES,活动 arch=armv7,VALID_ARCHS=armv6 i386)

    我在构建 iOS 应用程序时遇到此错误 没有可供编译的架构 ONLY ACTIVE ARCH YES active arch armv7 VALID ARCHS armv6 i386 我在尝试使用 ACAccountTypeIdentifi
  • Java 枚举、JPA 和 Postgres 枚举 - 如何让它们一起工作?

    我们有一个带有 postgres 枚举的 postgres 数据库 我们开始将 JPA 构建到我们的应用程序中 我们还有 Java 枚举 它反映了 postgres 枚举 现在最大的问题是如何让 JPA 一方面理解 Java 枚举 另一方面
  • 多态性 - 只需两句话即可定义[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我看过其他定义和解释 但没有一个让我满意 我想看看是否有人可以在不使用任何代码或示例的情况下最多用两句话来定义多态性 我不想听到 所以你有一个人 汽车 开罐器 或者这个词是如何衍