Java享元模式结构与应用分析

享元模式的结构图挺清晰,角色分工也蛮明确的。Flyweight 接口Concrete FlyweightFlyweight Factory 三个角色一字排开,像极了一个工厂流水线,谁负责啥一目了然。

用这个模式可以做到资源共享,比如 UI 组件、数据库连接池,甚至是棋盘游戏里的棋子对象都能复用,省内存又高效。你要是写 WebSocket 聊天、地图标点那类场景,挺合适。

PPT 里虽然是 Java 的例子,不过你搞 C++ 的也别急,C++的实现也有得看。

如果你还想深入看看代码实现,不妨看看这篇 Java 的详解,讲得还不错,图文并茂。

哦对了,记得别一股脑创建太多对象,享元模式最大的亮点就是“共享”,滥用的话反而会适得其反。

如果你手头项目内存压力大、对象重复又多,可以考虑用用这个模式,蛮省事的。

ppt 文件大小:1.63MB