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

如题,本篇我们介绍下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("乌鳢鱼"));

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值