属性
使用属性列表
class User {
name: string
age: number
// 属性访问修饰符,默认是 public
public gender: string
private height: number // 只能在自身内部访问
protect long: number // 只能在自身和子类的内部访问
readonly address: string
// 如果直接用 public 在构造器里面声明,那么相当于 在属性列表中声明属性然后再构造器中对其赋值的简写
constructor(name:string, age:number, public height: number){
this.name = name
this.age = age
}
}
// 可以加上在配置文件中加上 strictPropertyInitialization: true, 表示当构造函数没有参数时,会出错
访问器
用于控制属性的读取和赋值
class User {
_age: number
constructor(age: number) {
this._age = age
}
get age () {
return this._age
}
set age(v) {
this._age = v
}
}
const user = new User(18)
console.log(user.age)
user.age = 20