当抽象类遇到单例模式

从定义上区分:

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

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

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

 

解决方案:

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

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

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

即可解耦。

 

posted @ 2014-01-14 17:39  土肥圆  阅读(641)  评论(0)    收藏  举报