3.继承.js 832 B

12345678910111213141516171819202122232425262728293031323334
  1. "use strict";
  2. // function fn1() {}
  3. // fn1()
  4. // 立即执行函数
  5. (function () {
  6. // 可以保证作用域 唯一性
  7. class Money {
  8. constructor(name, num) {
  9. this.name = name;
  10. this.num = num;
  11. }
  12. say() {
  13. console.log("你好");
  14. }
  15. }
  16. /**
  17. * 继承
  18. * 因为想让多个子类同时拥有父类的属性及方法 所以采用继承
  19. * 继承后 子类就会拥有父类相同的内容
  20. * 若子类中 定义的方法与父类相同 则会覆盖父类的方法 方法重写
  21. */
  22. class A extends Money {
  23. say() {
  24. console.log("大家好");
  25. }
  26. }
  27. class B extends Money {
  28. }
  29. let aa = new A('孙悟空', 100);
  30. let bb = new B('这个', 100);
  31. console.log(aa);
  32. aa.say();
  33. bb.say();
  34. })();