在Java中,类上的静态方法有什么缺点吗?
让我们假设在我的编码环境中强加了一条规则(或经验法则),即类上不使用,修改或以其他方式不需要任何实例变量来完成其工作的任何方法都应设置为静态。这样做是否有任何固有的编译时间,运行时或任何其他缺点?
(已编辑以作进一步澄清)
我知道这个问题有些开放和模糊,所以我对此表示歉意。我问这个问题的意图主要是在“帮助者”方法的背景下。实用程序类(带有私有 CTOR,因此它们无法实例化)作为我们已经执行的静态方法的持有者。我在这里的问题更符合这些小方法,这些方法有助于主类API。
我可能在一个类上有4或5个主要的API /实例方法,这些方法可以完成真正的工作,但是在此过程中,它们共享一些通用功能,这些功能可能只处理API方法的输入参数,而不是内部状态。这些是我通常提取到它们自己的帮助器方法中的代码部分,如果它们不需要访问类的状态,请使它们成为静态的。
因此,我的问题是,这本质上是一个坏主意吗?如果是,为什么?(或者为什么不呢?