欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

typescript(八)--ts中接口(可索引型、类类型)

程序员文章站 2022-07-12 15:54:01
...

如题,本篇我们介绍下ts中可索引型(数组型)接口 和类类型接口。

可索引型接口用于构建hash散列、堆栈等。

类类型接口就是传统面向对象语言(如java)中的接口,在传统面向对象语言(如java)中极为常见。

06_interface_arr.ts  可索引接口

/*
* ts中接口
*   可索引(数组型)接口   数组  可索引对象(hash、堆栈)  不常用
* */
 
//可索引接口
 interface UserArr{
     //定义索引key为number类型,索引值为string类型
     [index:number]:string
 }
 
 var arr1:UserArr;
  arr1=["aa","bb","cc"];
 var arr2: UserArr
  arr2={1:"hello",2:"world"};
 console.log(arr1);
 console.log(arr2);

07_interface_class.ts 类类型接口

/*
* ts中接口
*     类类型接口: 对类的规范  ,这种类型的接口在传统面向对象语言中最为常见,
*     比如java中接口就是这种类类型的接口 。这种接口与抽象类比较相似,但是接口只能含有为抽象方法、成员属性。
*     实现类中必须实现接口中所有的抽象方法和成员属性。
* */
 
interface  Animal{
    name:string;
    eat(s:string):string;
}
 
//实现接口使用implements关键字,继承 使用extends关键字
//狗类
class Dog implements Animal{
    name:string;
    constructor(name:string){
        this.name=name;
    }
    //实现接口中抽象方法
    eat(s){
       return  this.name+"吃肉:"+s;
    }
}
//猫类
class Cat implements Animal{
    name:string;
    constructor(name:string){
        this.name=name;
    }
    //实现接口中抽象方法
    eat(s){
        return  this.name+"吃鱼:"+s;
    }
}
 
var dog=new Dog("tom");
var cat=new Cat("kitty");
console.log(dog.eat("五花肉"));
console.log(cat.eat("乌鳢鱼"));

 

相关标签: ts typescript