使用new 关键字调用函数,创建对象的过程中做了什么

embedded/2024/10/10 13:21:58/

使用new 关键字调用函数,创建对象的过程中做了什么


使用 new关键字创建对象的过程大致可以分为以下几个步骤:

  1. 创建空对象:首先,new操作符会创建一个空对象,这个对象的隐式原型__proto__属性会被设置为构造函数的显示原型prototype属性。
  2. 设置原型链:将新创建的空对象的隐式原型__proto__属性设置为构造函数的原型prototype,这样新创建的对象就能够访问构造函数的原型上定义的方法和属性。
  3. 调用构造函数:接着,会调用构造函数,并将this指向新创建的空对象。在构造函数中,可以给这个对象添加属性和方法。
  4. 执行构造函数:在构造函数中,会根据定义的参数列表执行一系列操作,例如初始化实例变量、执行其他方法等。
  5. 返回对象引用:构造函数执行完毕后,如果构造函数有返回值,并且返回值是对象类型,那么就返回构造函数的返回值;如果构造函数没有返回值或者返回值不是对象类型,那么就返回新创建的空对象。

http://www.ppmy.cn/embedded/5528.html

相关文章

线性代数基础3 行列式

行列式 行列式其实在机器学习中用的并不多,一个矩阵必须是方阵,才能计算它的行列式 行列式是把矩阵变成一个标量 import numpy as np A np.array([[1,3],[2,5]]) display(A) print(矩阵A的行列式是:\n,np.linalg.det(A))array([[1, 3],[2, …

椋鸟数据结构笔记#10:排序·中

文章目录 四、归并排序时间复杂度实现递归实现非递归实现 测试稳定性 五、非比较排序5.1 计数排序时间复杂度实现测试局限性 5.2 桶排序时间复杂度实现测试 5.3 基数排序时间复杂度实现测试局限性 萌新的学习笔记,写错了恳请斧正。 四、归并排序 归并排序是一种非常…

在QT中使用QTableView与数据库连接

一、界面与数据库连接,使用QSqlTableModel对数据处理 //界面初始化 void TestProSetWid::initsqlmodel() {// 连接SQLite数据库db QSqlDatabase::addDatabase("QSQLITE","second");db.setDatabaseName("./testitem.db"); // 替换为…

亚远景科技-如何看待汽车软件开发中的质量管理与传统质量管理的异同?结合ASPICE标准谈谈

汽车软件开发中的质量管理与传统质量管理在某些方面存在异同,而ASPICE(Automotive SPICE)标准为汽车行业提供了一套针对软件开发过程的专门质量管理框架。下面是对比分析以及ASPICE标准在此背景下的作用: 异同点: 1. 复…

【k8s】(二)kubernetes1.29.4离线部署之-镜像文件准备

离线镜像文件准备 **注意: **离线安装需要准备大量的镜像,这一步千万要仔细否则会出现各种意想不到的问题 需要准备的镜像文件 kube-apiserverkube-controller-managerkube-schedulerkube-proxykube-proxycorednspauseetcd 以上镜像文件可以从&#xf…

【大模型应用极简开发入门(1)】LLM概述:LLM在AI中所处位置、NLP技术的演变、Transformer与GPT、以及GPT模型文本生成逻辑

文章目录 一. AI中大语言模型的位置与技术发展1. 从AI到Transformer2. NLP:自然语言处理3. LLM大型语言模型:NLP的一种特定技术3.1. LLM定义3.2. LLM的技术发展3.2.1. n-gram模型3.2.2. RNN与LSTM 二. Transformer在LLM中脱颖而出1. Transformer架构能力…

【工厂模式】工厂方法模式、抽象工厂模式-简单例子

简单工厂模式,请跳转到我的另一篇博客【工厂模式】简单工厂模式-简单例子-CSDN博客 四、工厂方法模式 (1)这部分还是不变,创建一个Car接口,和两个实现类。 public interface Car {void name(); }public class WuLing…

第63天:服务攻防-框架安全CVE 复现DjangoFlaskNode.JSJQuery

目录 思维导图 案例一:JavaScript-开发框架安全-Jquery&Node node.js目录穿越 CVE-2021-21315命令执行 Jquery CVE-2018-9207 案例二:Python-开发框架安全-Django&Flask django cve_2019_14234 CVE-2021-35042 flask ssti 思维导图 案…