根据this anwer方法,I / O不是纯粹的功能'并且不应该是静止的。另一方面,this highly upvoted answer让我觉得如果我不需要任何对象来调用方法,它应该是静态的。
我有一个类,它只是帮助通过URL获取数据。该类只有一个方法可以进行一些url预处理,并在下面调用apache的IOUtils。它应该或不应该是静态的。该类没有任何状态,它可以修改的唯一状态就在它自身之外。
[1]为什么用静态方法注入类很难。这是设计的吗?我的意思是,我不想被迫传入java.lang.Class并使用反射来调用静态方法 - 同时感觉可怕和丑陋。我想要的是能够传递对具有某些功能的类(不是对象)的引用。即使是支持模拟静态方法的测试框架PowerMock也可以通过破解字节码来实现,我希望尽可能避免这种情况。
围绕此事的一般指导是什么?