继承用的比较多,封装多态用的比较少。继承示例代码:javascript
// 父类 class People { // 构造函数,初始化的时候也须要传什么东西,而后定义 constructor(name, age) { this.name = name; this.age = age; } eat() { alert(`${this.name} eat something`); } speak() { alert(`my name is ${this.name},age ${this.age}`); } } // 子类继承父类 class Student extends People { constructor(name, age, number) { super(name, age); // 将name和age传递给父类的构造函数来执行 this.number = number; // 相比较人来讲多了一个属性学号 } study() { alert(`${this.name} study`); } } var liming = new Student("李明", 25, "A1"); var hanmeimei = new Student("韩梅梅", 25, "A2"); liming.study(); liming.eat(); hanmeimei.study(); hanmeimei.speak();
可知,子类能够使用父类定义的方法。People类 能够吃能够喝,Student类不只能够吃 能够喝 还有学习的任务。java
继承的两个特色:函数
一、父类是公共的,不单单服务于单个子类。学习
二、继承可将公共方法抽离出来,提升复用,减小冗余。this