动态绑定(dynamic binding)和消息传递(message passing)的区别

动态绑定和消息传递的主要区别在于,动态绑定是在运行时将过程调用与相关代码链接起来的方法,而消息传递是在对象之间交换消息的方法。...

动态绑定和消息传递的主要区别在于,动态绑定是在运行时将过程调用与相关代码链接起来的方法,而消息传递是在对象之间交换消息的方法。

面向对象编程(OOP)是一种主要的编程范式,它允许对计算中的真实场景进行建模。此外,这使得程序可重用和可管理。在OOP中,对象具有属性和方法。属性定义属性,方法定义行为。大多数高级编程语言都支持OOP特性;动态绑定和消息传递就是这样两个特性。

覆盖的关键领域

1.什么是动态绑定-定义,功能2.什么是消息传递-定义,功能3.动态绑定和消息传递的区别是什么-关键区别的比较

关键术语

动态绑定、后期绑定、消息传递、面向对象

动态绑定(dynamic binding)和消息传递(message passing)的区别

什么是动态绑定(dynamic binding)?

动态绑定是在执行代码时将过程调用与其代码链接起来的方法。换句话说,它发生在运行时。动态绑定也称为后期绑定。下面是一个例子。

Difference Between Dynamic Binding and Message Passing_Figure 1

Figure 1: Shape class

Difference Between Dynamic Binding and Message Passing_Figure 2

Figure 2: Circle class

Main Difference - Dynamic Binding vs Message Passing

Figure 3: Triangle class

Difference Between Dynamic Binding and Message Passing

Figure 4:  Main method

Shape类有一个draw方法,而Circle和Triangle类扩展了Shape类。因此,Shape类是父类,而Circle和Triangle类是子类。这些类还有一个带有自己实现的“draw”方法。

在main方法中,s是Shape类型的参考变量。首先,s指向Shape类型的对象。因此,它调用Shape类的draw方法。然后,s指向Circle类型的对象。因此,它调用Circle类的draw方法。最后,s指向三角形对象,它将调用三角形类的draw方法。在运行时执行不同的draw方法。即使引用变量是Shape类型,绑定也会在运行时相应地发生。因此,这称为动态绑定。

什么是消息传递(message passing)?

消息传递是在对象之间交换消息的方法。对象可以在它们之间发送和接收类似于人类的消息。在编程中,函数或方法有助于传递消息。在进程间通信和并行计算中,除了面向对象外,进程与其他资源之间还存在消息传递。

消息传递可以是同步的,也可以是异步的。在同步消息传递中,发送方和接收方在交换消息时必须互相等待。在异步通信中,不必等待对方传递消息。它们可以在传输消息时执行自己的计算。

动态绑定(dynamic binding)和消息传递(message passing)的区别

定义

动态绑定是将过程调用链接到只在运行时执行的相关代码的方法,而消息传递是面向对象编程中在对象之间交换消息的方法。因此,这是动态绑定和消息传递之间的主要区别。

使用

动态绑定和消息传递之间的另一个区别是,动态绑定允许在运行时使用同一对象执行不同的代码,而消息传递允许在对象之间开发通信。

结论

动态绑定和消息传递的主要区别在于,动态绑定是在运行时将过程调用与相关代码链接起来的方法,而消息传递是在对象之间交换消息的方法。

引用

1.战斗机、技术。面向对象编程的概念–动态绑定,Technology Fighters,2017年11月9日,此处提供。2。“消息传递定义和信息。“IT定义”,2014年12月26日,可在此处获得。 2.“消息传递定义和信息”,IT定义,2014年12月26日,

  • 发表于 2021-07-01 08:23
  • 阅读 ( 352 )
  • 分类:IT

你可能感兴趣的文章

早期的(early)和后期装订(late binding)的区别

...用于解析方法调用。延迟绑定发生在运行时。它也被称为动态绑定。在这个过程中,绑定发生在程序执行时。重写的方法使用后期绑定进行绑定。参考以下程序。 图03:形状等级   图04:圆类   图05:三角形类   图06:后期装订...

  • 发布于 2020-10-19 04:05
  • 阅读 ( 383 )

静态绑定(static binding)和动态绑定(dynamic binding)的区别

关键区别–静态绑定与动态绑定 Java和C等编程语言支持面向对象编程(OOP)。它允许使用对象构建软件。软件系统或程序中有许多对象。这些对象具有属性和方法。属性描述特征。方法描述对象可以执行的操作。数据使用方...

  • 发布于 2020-10-19 17:49
  • 阅读 ( 420 )

活动站点(active site)和结合位点(binding site)的区别

...。 目录 1. 概述和主要区别 2. 什么是活动站点 3. 什么是绑定站点 4. 并列比较-活动位点与结合位点的表格形式 5. 摘要 什么是活动站点(active site)? 活性中心是酶上化学反应底物结合以进行催化化学反应的区域。该区域由两个亚...

  • 发布于 2020-10-22 05:58
  • 阅读 ( 350 )

rpc协议(rpc)和文件(document)的区别

...描述。WSDL概述了受支持的Web服务操作和消息,并将它们绑定到具体的网络协议和消息格式。抽象定义是使用“type”、“message”和“portType”元素定义的。具体规范使用“绑定”和“服务”元素来描述。每个元素都放在一个“defi...

  • 发布于 2021-06-23 19:34
  • 阅读 ( 192 )

发短信(texting)和信息(messaging)的区别

...网络传输信息的方式类似于打电话给对方。 创建或编写消息的第一方是“发送方”,而在接收端的一方是“接收方”或“接收方”。信息通常由字母和数字组成。每一个移动设备,无论是否智能,都具有发送和接收文本信息的...

  • 发布于 2021-06-25 02:38
  • 阅读 ( 526 )

动态(dynamic)和运动粘度(kinematic viscosity)的区别

主要区别–动态粘度与运动粘度 粘度对于任何依赖于流体流动的过程都是非常重要的。通常引用两种粘度:动态粘度和运动粘度。动态粘度和运动粘度之间的主要区别在于,动态粘度是一种测量流体流动困难程度的方法...

  • 发布于 2021-06-27 09:21
  • 阅读 ( 320 )

静止的(static)和动态平衡(dynamic equilibrium)的区别

主要差异静态(main difference static) vs. 动态平衡(dynamic equilibrium) 在化学中,“平衡”是指化学反应的一种状态,在这种状态下,从外部的角度看,反应物和产物混合物的成分不能发生进一步的变化。然而,分析混合物内部...

  • 发布于 2021-06-27 09:49
  • 阅读 ( 569 )

静止的(static)和动态ip(dynamic ip address)的区别

静态IP地址和动态IP地址的主要区别在于,静态IP地址是由网络管理员手动分配给设备的固定地址,而动态IP地址是由DHCP服务器自动分配给设备的地址。 计算机网络由各种设备组成,如台式机、笔记本电脑、服务器、路由器和交...

  • 发布于 2021-07-01 03:17
  • 阅读 ( 812 )

静止的(static)和动态哈希(dynamic hashing)的区别

静态哈希和动态哈希的主要区别在于,在静态哈希中,生成的数据桶地址总是相同的,而在动态哈希中,数据桶根据记录的增减而增减。 要在大型数据库中查找数据,不可能搜索所有索引。散列提供了解决这个问题的另一种方...

  • 发布于 2021-07-01 07:30
  • 阅读 ( 332 )

贪心法(greedy method)和动态规划(dynamic programming)的区别

贪婪方法与动态规划的主要区别在于,贪婪方法的决策(选择)依赖于迄今为止所做的决策(选择),而不依赖于未来的选择或子问题的所有解。另一方面,动态规划是在前一阶段所有决策的基础上进行决策的。 算法是解决问...

  • 发布于 2021-07-01 11:12
  • 阅读 ( 449 )
omkc463
omkc463

0 篇文章

相关推荐