我有一个singleton
记录器,许多线程在运行时使用它来进行记录。我需要不同类型的它,所以我决定将可更改的部分移动到protected
方法并继承它。
继承中的singleton
类是否有任何特殊之处(我们对常规类没有考虑)?
答案 0 :(得分:1)
单身人士应该密封,期间。否则他们在实践中可能不是真正的单身人士。
当然,您可以使用结构地图,Autofac或Castle Windsor等IOC容器来管理您班级的生活方式;那么你不必把它写成单例,只需在IOC容器中将其声明为单例。
话虽如此,看看你的特定例子(你想要记录),你可能并不真的需要一个单例类。如果有充分的理由,您只使用单例 - 例如创建对象时的严重开销。但是打开一个用于写入的文本文件并不算是一个重要的开销......