3.继承.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. "use strict";
  2. // (function(){
  3. // 立即执行函数 可以保证作用域 名字的唯一性
  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. */
  23. // 子类
  24. class A extends Money {
  25. say() {
  26. console.log("我继承到了");
  27. }
  28. back() {
  29. console.log("返回");
  30. }
  31. }
  32. class B extends Money {
  33. }
  34. // 调用
  35. let aa = new A("悟空", 20);
  36. aa.say();
  37. aa.back();
  38. let bb = new B("八戒", 10);
  39. bb.say();
  40. })();