要知道何时以及如何正确使用静态方法,首先要搞清楚静态方法与实例方法的区别。静态(static)本身说明该行为是无状态的,无需实例化,调用时无需再格外分配内存来存放实例。所以,针对全局的单例场景、无状态的行为时,就可以考虑用使用静态方法。但是,静态方法有一个致命的问题,即它与具体类型是强耦合的。如果该行为可能存在变化,就要避免使用静态方法。因此,有如下情形:对于确定不会变化的工具行为,使用静态方法;需要提供语法糖让代码更易于阅读,可以定义静态方法,因为它可以被static import。例如,google的common库里面有一些工具类Files、Preconditions。这些工具类提供的方法通常是不会变的。如在Preconditions工具类中,非空检查的逻辑在将来并
………………………………