介绍
享元模式是一种结构型设计模式,它通过共享相同或相似的对象来减少内存的使用量,从而提高系统的性能和效率。
角色
角色 | 说明 |
---|---|
Flyweight | 享元对象 |
ConcreteFlyweight | 内部状态的具体享元对象 |
UnsharedConcreteFlyweight | 外部状态的具体享元对象 |
FlyweightFactory | 享元工厂 |
角色示例
类名 | 担任角色 | 说明 |
---|---|---|
Song | 享元对象 | 歌曲 |
FreeSong | 内部状态的具体享元对象 | 免费歌曲 |
VipSong | 外部状态的具体享元对象 | Vip 歌曲 |
QQMusic | 享元工厂 | QQMusic 播放器 |
UML类图
代码
1 | <?php |
创建 Test.php,内容如上。
执行
1 | $ php Test.php |