3.继承.js 832 B

12345678910111213141516171819202122232425262728293031
  1. (function () {
  2. /**
  3. * 继承
  4. * 因为想让多个子类同时继承父类的属性及方法 所以采用继承
  5. * 如果子类中的方法与父类中相同 则显示子类中方法 这种情况成为方法重写
  6. */
  7. class Person2 {
  8. constructor(name, age) {
  9. this.name = name;
  10. this.age = age;
  11. }
  12. say() {
  13. console.log(`我叫${this.name},今年${this.age}岁`);
  14. }
  15. }
  16. class Child1 extends Person2 {
  17. say() {
  18. console.log("haha哈");
  19. }
  20. hello() {
  21. console.log("你好a");
  22. }
  23. }
  24. let p2 = new Person2('图图', 3);
  25. console.log(p2);
  26. let child1 = new Child1("LiLi", 20);
  27. console.log(child1);
  28. child1.say();
  29. child1.hello();
  30. })();
  31. // 自动编译 tsc --watch / tsc -w