当抽象类遇到单例模式

从定义上区分:

类的抽象是为了方便其它类的继承和实现,会生成很多子类和对象。

单例模式则是为了当前类仅有一个对象。

因此单例模式是与抽象类相冲突的,因此需要重新考虑设计模式和架构。

解决方案:

将此类的功能细化,即遵循OOP的5大设计原则之一,单一职责原则。

1)将需要单例化得对象提取出来单独成类.

2)在抽象类中通过getInstance()获取此对象。

即可解耦。

原文地址:https://www.cnblogs.com/myPersonalTailor/p/3519513.html