TypeScript在声明类的属性和方法的时候,可以给它指定一个访问控制符,访问控制符的作用是控制类的属性和方法是否可以在类外部被访问到;
Public:所有定义成public的属性和方法都可以在任何地方进行访问。
class Person{ constructor(public name:string){ } eat(){ console.log('eating') } }
Private:所有定义成private的属性和方法都只能在类定义内部进行访问。(静态方法或者属性)
class Person{ private age:number=16;//私有属性 constructor(public name:string){ } private work(){//私有方法 console.log('只能在类的内部调用,其余任何地方不能使用') } eat(){ this.work() console.log('eating') console.log(this.age) } } var p=new Person('张三'); p.work()//这里会报错 p.age;//这里会报错 p.eat();
Protected:多有定义成protected的属性和方法可以从类定义内部访问,也可以从子类中访问。只能在类的内部和子类中才能访问,实例化的对象不能访问。
class Person{ constructor( protected name:string) { } protected eat() { console.log(this.name) } } class People extends Person { constructor(name) { super(name) } work() { super.eat() } } var p = new People('张三'); p.work()
TypeScript面向对象特性 泛型(generic)
泛型(generic) 参数化的类型,一般用来限制集合的内容
我们延续上面的例子,我们现在声明一个数组,我们可以为他指定一个类型,
在指定这个类型是数组的时候,我们需要对它指定一个类型,比如Person,
这个用尖括号括起来的类型Person,就是这个数组的泛型,它规定了这个数组里面只能放Person
发表评论
侧栏公告
寄语
譬如朝露博客是一个分享前端知识的网站,联系方式11523518。
热评文章
标签列表
热门文章
友情链接