1. 封装、继承、多态
  1. api是什么
  2. 应用程序接口 封装复杂,接口简单

1、封装函数

1-1继承

  1. // 定义一个person类,包含了name和age两个属性
  2. class Person{
  3. name:string;
  4. age:number;
  5. constructor(name:string,age:number){
  6. this.name = name
  7. this.age = age
  8. }
  9. sayName(){
  10. console.log(this.name);
  11. }
  12. }
  13. // 关键字 extends 指父类继承给子类
  14. class Stdent extends Person{
  15. // super指父类,只能放在子类构造方法的第一行
  16. skill:string;
  17. constructor(name:string,age:number,skill:string){
  18. // 这个super方法如果放在添加的后面 就会出现报错的信息
  19. super(name,age)
  20. this.skill = skill
  21. }
  22. saySkill():void{
  23. console.log(this.skill);
  24. }
  25. }
  26. // 实例化一个类 这里是实例化一个Student
  27. var s:Stdent = new Stdent("lisi",18,"vue")
  28. console.log(s);

1-2多态

根据传入的对象,动态决定调用谁的方法

  1. // 定义一个interface方法
  2. interface Animal{
  3. eat():void;
  4. }
  5. class Cat implements Animal{
  6. eat():void{
  7. console.log("鱼");
  8. }
  9. }
  10. class Dog implements Animal{
  11. eat():void{
  12. console.log("骨头");
  13. }
  14. }
  15. class Farmer{
  16. //定义了一个feed方法
  17. feed(obj:Animal){
  18. obj.eat();
  19. }
  20. }
  21. var f:Farmer = new Farmer()
  22. /调用feed方法 来实例两个类
  23. f.feed(new Cat())
  24. f.feed(new Dog())