你不知道的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()

 

猜你喜欢

转载自www.cnblogs.com/wzndkj/p/12624249.html