ts中类里面的修饰符
dearweb
发布:2021-07-25 12:10:38阅读:
ts中类里面的修饰符,typescript中定义属性的时候给我们提供了三种修饰符,属性如果不加修饰符默认就是公有public
public 公有 在类里面、子类里面、类外面都可以访问
class Person{
public name:string; // 公有属性
// 构造函数 实例化类的时候触发的方法
constructor(name:string){
this.name = name;
}
run():string{
return `${this.name}在运动`
}
}
// Web 继承Person类
class Web extends Person{
constructor(name:string){
super(name)
}
}
let W = new Web('知了')
console.log(W.run()) //知了在运动
//外部访问
let P = new Person('武汉')
console.log(P.name) // 武汉protected 保护类型 在类里面、子类里面可以访问,在类外面没法访问
// 保护类型(类外部没法访问)
class Person{
protected name:string; // 保护类型
// 构造函数 实例化类的时候触发的方法
constructor(name:string){
this.name = name;
}
run():string{
return `${this.name}在运动`
}
}
// Web 继承Person类
class Web extends Person{
constructor(name:string){
super(name)
}
}
let W = new Web('知了')
console.log(W.run()) //知了在运动
let P = new Person('武汉')
console.log(P.name) // 警告 index.ts:130:19 - error TS2445: Property 'name' is protected and only accessible within class 'Person' and its subclasses.private 私有 在类里面可以访问,子类、类外面都没法访问
class Person{
private name:string; // 保护类型
// 构造函数 实例化类的时候触发的方法
constructor(name:string){
this.name = name;
}
run():string{
return `${this.name}在运动`
}
}
// Web 继承Person类
class Web extends Person{
constructor(name:string){
super(name)
}
}
let W = new Web('知了')
console.log(W.run()) //知了在运动
let P = new Person('武汉')
console.log(P.name) // 警告 index.ts:130:19 - error TS2445: Property 'name' is protected and only accessible within class 'Person' and its subclasses.小礼物走一波,支持作者
赏还没有人赞赏,支持一波吧