享元模式

  • 避免重新创建对象,其实只要有缓存对象的意思,并且共用一个对象实例,就是享元模式

代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Car {
name!: string
color!: string
changeColor(color: string) {
this.color = color
}
changeName(name: string) {
this.name = name
}
}
class CarFactory {
static car: Car
static getCar(): Car {
if (CarFactory.car === null) {
CarFactory.car = new Car()
}
return CarFactory.car
}
}
CarFactory.getCar().changeColor('red')

参考链接