接口的定义
接口是对某些数据或者方法的约束规则
1.json 的接口
interface Info{
name:string,
age:number,
sex?:string
}
//obj要实现这个接口,必须有name 为字符串的属性和age 为数字的属性,sex为可选属性
let obj:Info={
name:'22',
age:333,
sex:'女'
}
2.函数接口
interface getTnfo {
(id:string):Object
}
//getPerson方法要实现这个接口,必须有类型为string的参数,必须有类型为object的返回值
let getPerson:getTnfo=(id:string):Object=>{
return {}
}
3.类的接口
interface Animal {
name:string;
run(str?:string):void;
}
//Dog 类要实现 Animal 接口 用关键字 implements ,该接口规定必须有name属性,必须有run 方法,而且该方法必须没有返回值
class Dog implements Animal {
name:string
constructor(name:string){
this.name=name
}
run(){
console.log('奔跑')
}
}
接口也可以继承接口
interface Animal {
name:string
}
//Person接口继承了Animal接口
interface Person extends Animal {
work(str:string):void
}
//renlei这个类实现Person 接口,就必须有name属性和work方法
class renlei implements Person {
name:string
constructor(name:string){
this.name=name
}
work(str:string):void{
console.log('我在工作')
}
}