• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

6.typescript-对象的类型-接口

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
在typescript中,用接口(interface)来定义对象的类型。
和java中的类和接口的关系类似。
我在java书中看到接口是这样讲的:接口是一组常量和抽象方法的集合,抽象方法不给出方法体,由实现接口的类去实现,它提供方法声明与方法实现相分离的机制,使多个类之间表现出共同的行为能力。 
意思就是将某一类东西(类)的共同点(属性或方法)抽离出来放在接口(对,这个就是接口)里面,但是这些属性或方法并没有具体的值或方法体,只是进行了声明,告诉别人这是我最基本有的东西。
 
例如:我现在声明了一个动物接口(首字母大写),这里面有名字、年龄、性别三个属性和一个dream方法,假如这是动物们共有的,先把没有梦想的动物剔除掉(函数这里还没学到,我看了下觉着可能是这么写的,后面再详细讲函数,这里借用下),可以看到这里面只是声明属性和方法,并没有具体的值和方法体,下面来找个动物试验下:
 
老虎baby,我定义了一个变量tiger,它的类型是Animal,那么此时老虎就有了Animal中的属性和方法,就可以起名字了
 
现在这个老虎就可以把自己的信息告诉别人了(这里温习下嵌入表达式)
 
下面来正式的讲解一下typescript 中的接口使用:
1.接口名称首字母大写
2.实现接口类型的变量的形状要和接口一致
(即接口里面有什么,这个变量里面就必须要有什么,不可多不可少,字段名要相同,类型要相同,顺序不要求)
 这里少了sex不可以
 
 
 这里多了age也不可以
 
 
用方法变量调用的形式看了看,也是不可以的
 
这样就没问题了
 
3.它有一些属性类型可以弥补上述2的不可能要求
(1)可选属性
在可选的属性字段名后面加一个问号,好像在说:你想不想要我,不要我不写就是了(即可写可不写)
 
(2)任意属性
     1)[propName:string]表示定义了任意属性取string类型的值(这儿不是太懂)
     

 

     2)任意属性是可选属性
     

 

     3)命名随意且不限个数
     

 

     4)一旦定义了任意属性,那么确定属性和可选属性必须是它的子属性,如下number不是string的子属性
     
 
(3)只读属性
这里设置性别为只读的,就是说你在一开始的时候给它定义了,后来你就不能改了,就像是名字可以改,年龄也会变,但是性别可就不能改了(啊~好像也不一定)
 
还有需要注意的一点是,只读的约束是在第一次给对象赋值的时候,并不是在给只读属性第一次赋值的时候
 
 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
typescript 创建二维数组发布时间:2022-07-18
下一篇:
正确配置 Visual Studio Code 开发和调试 TypeScript发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap