接口(Interface)
用来建立某种代码约定,使得其他开发者在调用某个方法或创建新的类时必须遵循接口所定义的代码约定
typeScript里面提供interface、implements两个关键性来实现接口这个特性
interface 声明接口
implements 实现接口
使用接口有两个方式,我们看第一种使用方式:
作为方法参数的类型声明
TypeScript在你传入参数的时候会去检查你的参数属性,必须含有name和age属性
不管多传少传不传等都会报错,因为不符合Person的属性
interface Person { names: string; age: number; getAge(): void; readonly sala: number; //只读属性 sex?: string; //对象可有可无的属性 } let person: Person = { names: "123", age: 12, getAge: function() { console.log(this.age); }, sala: 7000 }; person.getAge(); console.log(person.sala);
使用接口去定义方法
接口的第二个使用方式,当一个类实现一个接口的时候,它必须实现这个接口里面的方法
interface PersonInterface { names: string; age: number; sex?: string; //对象可有可无的属性 readonly sala?: number; //只读属性 [propName: string]: any; getAge(): void; } //类 interface class People implements PersonInterface { //这里规定的是类属性的类型 names: string; age: number; sala: number = 8000; //这里规定的是实例化传值的类型 constructor(names: string, age: number) { this.names = names; this.age = age; } getAge(): void { console.log(this.age); } } //接口 interface继承 interface Student extends PersonInterface { id: number; } const student: Student = { names: "张三", age: 18, id: 1, getAge: function() { console.log(this.age); } }; console.log(student.age);
发表评论
侧栏公告
寄语
譬如朝露博客是一个分享前端知识的网站,联系方式11523518。
热评文章
标签列表
热门文章
友情链接