class是用于创建对象的模板。
(在js中构造函数也能批量创建对象,要留神函数有申明晋升,而类没有申明晋升,必须先定义类,在创立类的实例)

定义Animal类。类也是一个函数。

typeof(Animal) // function

对一个类自身来说,要留神以下四点:
1、构造函数constructor,这个函数用户在创立实例的时候传入参数。(new Animal("Jerry", 5))
2、办法,构造函数外部定义方法不须要function关键字。
3、setter、getter。setter和getter都是有非凡性能的属性,定义的时候别离应用set 关键字和get 关键字来定义,这二者定义的模式很像函数,但它们的用法都是属性的用法(object.key = value)
4、静态方法,在一个静态方法里调用另一个静态方法能够应用this,这里的this不绑定实例,而是绑定类自身;静态方法要用类调用,而不能用实例调用。

子类 (应用 extends 创立子类)

要留神:
1、子类的constructor函数中如果须要应用this,必须先执行super()办法初始化this。super初始化的参数应与父类constructor的参数雷同,这样创立子类实例的时候能力对应上。
2、子类中与父类的同名办法是笼罩关系,即子类办法笼罩父类办法。
3、子类与父类同名getter和setter是笼罩关系。
4、子类与父类的同名静态方法也是笼罩关系。