我强烈建议你不要硬着头皮,而是要硬着头皮,重构该旧代码以使用可替换的时钟。理想情况下,应该使用依赖项注入来完成,但是即使你使用了可替换的单例,你也将获得可测试性。
这几乎可以通过搜索自动实现,并替换为单例版本:
- 替换
Calendar.getInstance()为Clock.getInstance().getCalendarInstance()。
- 替换
new Date()为Clock.getInstance().newDate()
- 替换
System.currentTimeMillis()为Clock.getInstance().currentTimeMillis()
(如需要)
迈出第一步后,你可以一次用DI替换单例。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)