一、class 是什么?
class 是 ECMAScript 2015 引入的类对象,其继承特性也是基于原型链。
1、定义类
// 语法一
class name [extends] {
// class body
}
// 语法二
const MyClass = class [className] [extends] {
// class body
};
2、简单实例
let Foo = class {
constructor() {
}
bar() {
return "Hello World!";
}
};
let instance = new Foo();
instance.bar();
二、class 特性
1、constructor
功能:constructor() 是初始化 class对象 的特殊函数,称之为构造函数。
- 一个类中只能有一个名为 constructor 的函数;
- 如果不指定 constructor ,会使用默认构造函数;
- constructor 中,可以用 super 调用父类的构造函数、属性、函数,但必须在this之前。
// 1、语法
constructor([arguments]) {
... }
// 2、类的默认构造函数
constructor() {
}
// 3、子类的默认构造函数
constructor(...args) {
super(...args);
}
// 使用实例
class Polygon