静态方法或Singletons性能方面(Android)?

yan*_*nko 8 java performance singleton android static-methods

在具有少量POJO和许多辅助方法的应用程序中运行它们,有什么更好的性能:使辅助类单例或使方法静态?

Eri*_*lje 10

静态方法的性能和内存明显更好:

  1. 避免(潜在)虚拟函数调用的开销.
  2. 消除实际类实例所需的内存.
  3. 在使用它时,无需获取类的实例.

但老实说,我可能仍然会成功singleton.即使在移动环境中,通过不这样做而获得的收益可能非常小,以至于它们会产生零差异.


mat*_*t b 6

你能避免这两种情况并定期上课吗?

忽略性能问题,我建议避免使用singeltons和静态方法来提高可测试性.

单身人士和静态方法很难测试; 在这方面,单例基本上是静态方法,但具有不同的名称.在Google测试团队工作的Misko Hevery有一些关于这个主题的好文章: