构造函数与析构函数之间的区别

作者: Monica Porter
创建日期: 13 行进 2021
更新日期: 14 可能 2024
Anonim
11构造函数与析构函数(一)
视频: 11构造函数与析构函数(一)

内容

主要区别

构造函数被定义为编程语言中用于结构或类的排他方法,该方法有助于为相同类型的项赋予初始值。另一方面,析构函数被定义为一种独占方法,用于销毁连续运行的程序。


比较表

基础建设者析构函数
定义编程语言中用于结构或类的专有方法,有助于为相同类型的项目赋予初始值。用于销毁连续运行的程序的专有方法。
性质提出类问题时,结果将被调用的独特能力。一种不常见的能力,当删除班级问题或离开范围时会自然地被调用。
记忆为添加的项目分配内存。完成分配给对象的内存。
呼唤每当我们创建新对象时,它都会自动调用。每当程序段被激发或程序终止时,它都会自动调用。

什么是构造函数?

构造函数被定义为编程语言中用于结构或类的排他方法,该方法有助于为相同类型的项赋予初始值。只要我们使用的类具有相同的名称,或者为可能保留用户定义或默认值的对象成员提供值,该术语就会变得有用。构造函数看起来像一个示例策略。但是,它与一种技术的不同之处在于,它没有明确的回报排序,无法验证的获取方式,并且在大多数情况下具有针对度数修改器的各种标准。构造函数通常在发布类中具有相同的名称。他们有责任建立问题的信息个人,并设置班级的不变式,如果不变式无效,他们就会走下坡路。适当组成的构造函数会将随后的抗议置于合法状态。永久项必须处于构造函数中的状态。可以使用任何get修饰符来声明构造函数。尽管如此,如果get修饰符未在类中描述,编译器将提供默认值。如果构造函数被宣布为私有的可能性很小,则无法创建或确定该类,因此无法实例化该类。该公司的部分主要工作包括在内;包含应在应用程序中的特定情况下执行的操作的逻辑-例如,打开数据库关联,不应在构造函数中进行组合。同样,在使用推断的类构造函数时,应将正确的参数传递给父类构造函数。


什么是析构函数?

析构函数被定义为一种独占方法,用于销毁连续运行的程序。此操作涉及的一些主要步骤包括堆空间恢复过程,在对象生命周期内分配的空间,关闭文件和编辑数据库连接以及释放网络资源。当它的生存期绑定到一个作用域,并且执行离开学位,安装到另一个寿命结束的问题中,或者逐步分配并明确释放时,它就可能发生。它存在的主要理由是释放资产,例如,内存分配,打开的文档或附件,数据库关联,资产锁等,这些资产是在问题存在期间获得的,以及从可能保留的各种物质中注销引用。析构函数在C ++中被明确调用。无论如何,在C#和Java中,情况并非如此,因为分配给项目的内存的指定和到达确实是由城市工人负责的。尽管C#和Java中的析构函数是不确定的,但确保.NET运行时调用C#析构函数。在任何情况下,都必须明确地召唤Java终结器,因为不能确保其成功。该公司执行的部分主要活动;自动调用,不能从客户端代码中进行明确调用,不允许超负荷或遗留,无法确定修饰符或参数,对get类中的析构函数的调用请求从最大推断到最小推断。

关键差异

  1. 构造函数被定义为编程语言中用于结构或类的排他方法,该方法有助于为相同类型的项赋予初始值。另一方面,析构函数被定义为一种独占方法,用于销毁连续运行的程序。
  2. 构造函数是一种独特的能力,因此在提出类问题时就会调用它。另一方面,析构函数是一个非常特殊的位置,当删除班级问题或离开范围时会自然调用它。
  3. 构造函数的主要任务是为添加的项分配内存。另一方面,析构函数的主要任务是完成分配给对象的内存。
  4. 构造函数具有接受结构外部添加的不同参数的能力,另一方面,析构函数不接受任何此类参数。
  5. 每当我们创建新对象时,都会自动调用该构造函数。相反,每当一个块被激发或程序终止时,析构函数都会被自动调用。
  6. 构造函数始终以连续顺序存在,因此具有相同的名称。另一方面,析构函数总是以相反的顺序被调用,因此得到相反的名称。

口译员(名词)用一种语言听演讲者并将该话语与另一种语言的听众联系起来的人。与翻译器对比。“一名在德国法院受审的日本男子在翻译的协助下得到口译服务。”口译员(名词)解释某事的人,例如艺术品展览。一位进行遗产解释的人。口译员(名词)一种程序,它执行以机器语言以外的其他编程语言编写的另一个程序。用BAIC语言编写的程序通常通过解释器运行,尽管有些可以编译。 口译员(名词)口译的古形式 口译员(名词)能够...

捆绑与捆绑-有什么区别?

Laura McKinney

可能 2024

捆绑 束缚物是美国流浪汉亚文化定型使用的袋,麻袋或携带装置。宾德提夫是携带宾格的流浪汉的别称。俗称俗称的“毯子”,尤其是在东北流浪汉社区内。在现代流行文化中,装订带被描绘成一根棒子,用布或毯子绑在一端,用于承载物品,整个阵列都承载在肩膀上,将力传递到肩膀上,从而使持久和舒适抓地力,尤其是在较大的重物下。特别是在卡通漫画中,束缚袋通常具有圆点或方巾设计。但是,在实际使用中,绑定可以采用多种形式。...

我们的建议