• 你不知道的JS系列上( 42 ) - JS 类的机制


    “类”和“实例”的概念来源于房屋建造。

    建筑蓝图只是建筑计划,它们并不是真正的建筑,我们还需要建筑工人来建造建筑。建筑工人会按照蓝图建造建筑。实际上,他会把规划好的特性从蓝图中复制到现实世界的建筑中

    建筑成为了蓝图的物理实例,本质上就是对蓝图的复制。

    如果你想打开一扇门,那就必须接触真实的建筑才行-蓝图只能表示门应该在哪,但并不是真正的门。

    类仅仅是一个抽象的表示,描述了需要做的事,必须先实例化类然后才能对它进行操作

    类实例是由一个特殊的类方法构造的,这个方法通常与类同名,被称为构造函数。这个方法的任务就是初始化啊实例需要的所有信息(下列是伪代码)
    class CoolGuy {
      specialTrick = nothig
     
      CoolGuy(trick) {
        specialTrick = trick
      }
    
      showOff () {
        console.log('Here is my trick: ', this.specialTrick)
      }
    
    }
    var Joe = new CoolGuy('jumping');
    Joe.showOff();

    CoolGuy 类有一个 CoolGuy() 构造函数,执行 new CoolGuy() 时实际上调用的就是它。构造函数会返回一个对象,也就是类的一个实例,之后我们可以在这个对象上调用 showOff() 方法,来输出指定的特长。


    类构造函数属于类,而且通常和类同名。构造函数大多需要 new 来调,这样语言引擎才知道你想要构造一个新的类实例。

    在 es6 语法中统一由 constructor 表示类的构造函数
    class CoolGuy {
      constructor(trick) {
        this.specialTrick = trick
      }
    
      showOff () {
        console.log('Here is my trick: ', this.specialTrick)
      }
    
    }
    var Joe = new CoolGuy('jumping');
    Joe.showOff()

     

  • 相关阅读:
    [背包问题][二进制优化] Jzoj P4224 食物
    [并查集][排序] Jzoj P4223 旅游
    [哈夫曼树][优先队列] Bzoj P4198 荷马史诗
    [hash][差分][虚树] Jzoj P6011 天天爱跑步
    [dp] Jzoj P6012 荷马史诗
    [dp][递归] Jzoj P4211 送你一棵圣诞树
    [数学] Jzoj P3912 超氧化钾
    堆学习笔记(未完待续)(洛谷p1090合并果子)
    [AC自动机]luogu P2444 病毒
    [概率期望][DP]luogu P3830 随机树
  • 原文地址:https://www.cnblogs.com/wzndkj/p/12624249.html
Copyright © 2020-2023  润新知