使用单例模式最核心的一点是体现了面向对象封装特性中的“单一职责”和“对象自治”原则。
很多时候我们要保证类的实例只有一个。我们可能在自己的代码中判断需要的类的实例有无,无就new一个。这样看似不错。问题是,你用到这个类的地方有n个,这样你就需要n个判断。为什么不把这个职责交给类本身呢?然后让类提供一个接口访问。
在浏览BBS、SNS网站的时候,常常会看到“当前在线人数”这样的一项内容。对于这样的一项功能,我们通常的做法是把当前的在线人数存放到一个内存、文件或者数据库中ÿ
很多时候我们要保证类的实例只有一个。我们可能在自己的代码中判断需要的类的实例有无,无就new一个。这样看似不错。问题是,你用到这个类的地方有n个,这样你就需要n个判断。为什么不把这个职责交给类本身呢?然后让类提供一个接口访问。
在浏览BBS、SNS网站的时候,常常会看到“当前在线人数”这样的一项内容。对于这样的一项功能,我们通常的做法是把当前的在线人数存放到一个内存、文件或者数据库中ÿ

单例模式是面向对象编程中的一种设计模式,保证类只有一个实例并提供全局访问点。在在线计数器等场景中,单例能确保数据一致性。其主要特点包括:确保唯一实例、自我创建实例和提供全局访问。单例模式遵循“单一职责”和“对象自治”原则,避免多处实例化导致的数据不一致问题。
最低0.47元/天 解锁文章
2107

被折叠的 条评论
为什么被折叠?



