TypeScript 基础2 接口

接口(英文:Interface)

接口通常以interface来声明,接口是抽象方法的集合,即只声明,不定义具体值。

类描述对象的属性和方法。接口则包含类要实现的方法;除非实现接口的类是抽象类,否则该类要定义接口中的所有方法;一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。接口支持多继承,一个类可以实现多个接口;

在TypeScript中,接口除了用于约束类之外,还可以用来约束 JSON对象,数组,函数等;

使用示例如下:

    //接口约束类
    interface Icountry{
        Study(params:string):string;
        Build(params:string):string;
    }
    class Homeland implements Icountry {//类通过implement来描述自己实现的是哪个接口中定义过的功能;
        Study(params:string):string{
            return ' Study function is working with ' + params+'\n';
        }
        Build(params:string):string{
            return ' Build function is working with ' + params;
        }
    }

    var homeland = new Homeland;
    var project1 = homeland.Study('internet');
    var project2 = homeland.Build('place');
    console.log(project1,project2);
    //接口约束函数
    interface Ifucntion{
        (params:{name:string}):boolean;
    }
    let myfunction:Ifucntion;
    myfunction = function(params:{name:string}):boolean{
        if(params.name!='test'){
            return false; 
        }else{
            return true;
        }
    }
    console.log(myfunction({name:'test'}));
    //约束数组
    interface Iarray{
        [index:number]:string;
    }
    let myArray:Iarray=['1','str1'];

    //约束JSON
    interface Ijson{
        name:string,
        skill:string,
        readonly sex:string,//只读属性,即设置后不允许修改
        health?:boolean    //可选属性
    }
    let baby:Ijson = {
        name:'sweet heart',
        skill:'cry',
        sex:'girl'
    }

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值