当前位置: 首页 > news >正文

php个人网站模板国外免费注册域名的网站

php个人网站模板,国外免费注册域名的网站,wordpress 不发送邮件,支持wordpress主机坚持的本身就是意义 目录直观类比类 (Class) vs 实例 (Instance)对比表示例代码类 - 原型 - 实例关系图解释:类 (class Person)原型 (Person.prototype)实例 (new Person(...))总结:直观类比 类(Class) 图纸 / 模板实例&#xf…

坚持的本身就是意义

目录

  • 直观类比
  • 类 (Class) vs 实例 (Instance)
    • 对比表
    • 示例代码
  • 类 - 原型 - 实例关系图
  • 解释:
    • 类 (class Person)
    • 原型 (Person.prototype)
    • 实例 (new Person(...))
  • 总结:

直观类比

  • 类(Class) = 图纸 / 模板
  • 实例(Instance) = 根据图纸造出来的房子 / 产品

类 (Class) vs 实例 (Instance)

对比表

对比点类 (Class)实例 (Instance)
定义方式使用 class 关键字定义使用 new 类名(...) 创建
打印结果打印出来的是 类的结构/定义打印出来的是 对象(属性 + 值)
内存位置存在于函数(构造器)区域存在于堆内存,每次 new 都是新的对象
属性类本身没有具体属性值,只定义结构实例对象上有具体的属性和值
方法方法定义在类的 prototype实例可以直接调用这些方法
用途相当于一个“模板”相当于由模板生产出来的“成品”
例子代码console.log(Person)
👉 输出:class Person { constructor(...) {...} speak() {...} }
console.log(p1)
👉 输出:Person { name: '张三', age: 22 }

示例代码

class Person {name: stringage: numberconstructor(name: string, age: number) {this.name = namethis.age = age}speak() {console.log(`我叫${this.name},今年${this.age}`)}
}console.log(Person) // 类的定义const p1 = new Person("张三", 22)
console.log(p1)     // 实例对象 Person { name: '张三', age: 22 } 
p1.speak()          // 调用实例方法 我叫张三,今年22岁

类 - 原型 - 实例关系图

   ┌─────────────────────────┐│        class Person     ││ ─────────────────────── ││ constructor(name, age)  ││ speak() { ... }         │  ← 方法挂到 prototype 上└─────────────┬───────────┘│▼┌─────────────────┐│ Person.prototype│   ← 原型对象│ ─────────────── ││ speak() { ... } │   ← 共享方法│ constructor: f  │└───────▲─────────┘│ [[Prototype]]┌────────────┴────────────┐│                         │
┌──┴───────────┐      ┌──────┴───────────┐
│   p1 实例     │      │    p2 实例       │
│ ───────────  │      │ ───────────      │
│ name: '张三'  │      │ name: '李四'     │
│ age: 22      │      │ age: 18          │
└──────────────┘      └──────────────────┘

解释:

类 (class Person)

  • 定义了构造函数和方法。
  • 方法其实会自动挂载到 Person.prototype 上。

原型 (Person.prototype)

  • 所有实例共享的方法都存在这里。例如 speak() 方法,只存一份,所有实例都能通过原型链访问。

实例 (new Person(…))

  • 每次 new 都会创建一个新的对象(放在堆内存里),对象上存储 独有的数据属性(name, age)。
  • 调用 p1.speak() 时,JS 引擎会:
    • 先找 p1 本身有没有 speak
    • 找不到 → 顺着 proto(即原型链)去 Person.prototype 找
    • 找到后执行
class Person {constructor(name, age) {this.name = namethis.age = age}speak() {console.log(`我叫${this.name},今年${this.age}`)}
}const p1 = new Person("张三", 22)console.log(p1) // Person { name: '张三', age: 22 }
console.log(Person.prototype) // { speak: f, constructor: f }
console.log(p1.__proto__ === Person.prototype) // true

总结:

  • 类 (Class) 是模板,方法都放在 prototype 上。
  • 实例 (Instance) 存放自己的数据属性。
  • 实例通过 proto 链接到 Person.prototype,形成原型链来共享方法。
http://www.dtcms.com/a/533110.html

相关文章:

  • git clone 提示Filename too long
  • 做网站卖产品怎么开展网页设计培训南京
  • GitHub等平台形成的开源文化正在重塑开通了
  • 做网站找浩森宇特wordpress博客源码下载
  • app 网站建设seo包年推广
  • h5游戏免费下载:动态视力
  • Unity3D Shader 属性详解
  • 做招聘的h5用哪个网站宁德网站开发
  • 多模态网络的设计和模态对齐相关
  • 91、使用paddleocr V5进行算能开发板适配
  • dw班级网站建设当前主流的网络营销方式
  • 网站打开为建设中如何用python做网站
  • dedecms导购网站模板庄河城乡建设管理局网站
  • CAP 定理详解
  • TVM | Define
  • 三蛋空间 wordpress乐云seo官网
  • 用易语言做攻击网站软件网络营销特点是什么
  • 网站定制开发前期要有一定的规划百度网盟推广费用投入
  • 9. 从0到上线:.NET 8 + ML.NET LTR 智能类目匹配实战--Web API 接口与前端集成:把能力对外开放
  • 数据库的安全与保护(终)
  • AI 应用层革命(四)——人机共生的哲学与终极形态
  • 工程建设业主官方网站做视频网站的备案要求
  • 设计模式-适配器模式(Adapter)
  • 为什么建设法律法规网站东莞网站制作公司
  • 成品网站w灬源码伊甸如何选择网站托管公司
  • Lamda表达式
  • 面经分享--招银云创汇总
  • IDEA Debug高阶技巧
  • 备案做电影网站怎么自己制作一个网站
  • 腾讯云部署gitlab