1 /* 2 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用。接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。 typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括属性、函数、可索引和类等。 3 4 定义标准。 5 6 */ 7 8 9 // 可索引接口:数组、对象的约束 (不常用) 10 11 12 13 //ts定义数组的方式 14 /* 15 var arr:number[]=[2342,235325] 16 17 18 var arr1:Array<string>=['111','222'] 19 */ 20 21 22 23 //可索引接口 对数组的约束 24 // interface UserArr{ 25 // [index:number]:string 26 // } 27 28 29 // // var arr:UserArr=['aaa','bbb']; 30 31 // // console.log(arr[0]); 32 33 34 35 // var arr:UserArr=[123,'bbb']; /*错误*/ 36 37 // console.log(arr[0]); 38 39 40 //可索引接口 对对象的约束 41 42 43 44 45 // interface UserObj{ 46 47 // [index:string]:string 48 // } 49 50 51 // var arr:UserObj={name:'张三'}; 52 53 54 55 56 57 58 //类类型接口:对类的约束 和 抽象类抽象有点相似 59 60 61 interface Animal{ 62 name:string; 63 eat(str:string):void; 64 } 65 66 class Dog implements Animal{ 67 68 name:string; 69 constructor(name:string){ 70 71 this.name=name; 72 73 } 74 eat(){ 75 76 console.log(this.name+'吃粮食') 77 } 78 } 79 80 81 var d=new Dog('小黑'); 82 d.eat(); 83 84 85 class Cat implements Animal{ 86 name:string; 87 constructor(name:string){ 88 89 this.name=name; 90 91 } 92 eat(food:string){ 93 94 console.log(this.name+'吃'+food); 95 } 96 } 97 98 var c=new Cat('小花'); 99 c.eat('老鼠');
typescript可索引接口 类类型接口
猜你喜欢
转载自www.cnblogs.com/Spinoza/p/9377187.html
今日推荐
周排行