4.super.js 568 B

123456789101112131415161718192021222324
  1. (function () {
  2. class Animal {
  3. constructor(name) {
  4. this.name = name;
  5. }
  6. say() {
  7. console.log(`我是一只${this.name}`);
  8. }
  9. }
  10. /**
  11. * super 调用父类中要继承的属性
  12. * 若子类要添加新的属性
  13. * 子类的构造器要对弗雷德构造函数进行重写
  14. */
  15. class Cat extends Animal {
  16. constructor(name, age) {
  17. super(name);
  18. this.age = age;
  19. }
  20. }
  21. let cat1 = new Cat('小猫', 3);
  22. console.log(cat1);
  23. cat1.say();
  24. })();