1、类:是用于创建对象的模板,用代码封装数据以处理该数据,js的类建立在原型上。
定义:类是特殊的函数,就像函数声明与函数表达式一样,类也有两个组成部分,类表达式和类声明。
类声明:声明创建一个基于原型继承的具有给定名称的新类
Class Polyon{
constructor(height,width){
this.area=height*width
}
}
将Polyon实例化为一个实例化对象,.area体现了他的原型继承
console.log(new Polyon(4,3).area)
函数声明和类声明之间的一个重要区别在于,函数声明会提升,类声明不会。你首先需要声明你的类,然后再访问它,否则类似以下的代码将抛出
//类实例化
let p = new Rectangle(); //报错, ReferenceError
//声明类
class Rectangle {}
2、类的调用
构造函数:
constructor用于创建和初始化一个由class创建的对象,一个类中只能拥有一个名为“constructor”的特殊方法, 一个构造函数可以使用 super 关键字来调用一个父类的构造函数
静态方法:
static 关键字用来定义一个类的一个静态方法。
调用静态方法不需要实例化该类,但不能通过一个类实例调用静态方法。
静态方法通常用于为一个应用程序创建工具函数。
3、类有三个核心概念:封装、继承、多态
多态,即父类的通用行为可以被子类用更特殊的行为重写