Vin*_*eti 2 java oop singleton spring design-patterns
Component和Service类型Bean,默认情况下,其他大多数Bean类型都是单例。
在我的代码Pull请求中,我声明了一个方法为static,Component因为该方法未修改任何类级别的变量。
我的代码审阅者指出,由于该类无论如何都是Singleton,并且将具有单个引用,因此他说没有必要使该方法static成为一个instance方法。
由于我的应用程序中的大多数类都是Singletons,哪种方法才是编写代码的正确方法?
您的审阅者可能对此是正确的,在单例内部声明静态方法几乎没有意义;除非此静态方法是返回单例实例本身的工厂方法。
我可能会想到另外两个没有在单例中声明静态方法的原因:在某些情况下,对静态方法进行测试会更加困难,并且您确实会使该单例的调用者感到困惑。他/她可能会看到有一个静态方法,并且很难理解为什么要这样声明,就我所知,对于这种方法,它需要额外的推理。
| 归档时间: |
|
| 查看次数: |
233 次 |
| 最近记录: |