在大多数情况下,传统的编程智慧似乎不鼓励使用静态方法.通常,我有这些'经理',例如UserManager,AppointmentManager等,经理中的一个方法就是XXX getXXX(long xxxId)例如User getUser(long userId).我真的不明白为什么这不能成为静态方法.它看起来非常像工厂方法(la GoF工厂模式).很难放弃以下方便:
User user = UserManager.getUser(id);
并使用
UserManager userManager = new UserManager();
User user = userManager.getUser(userId);
代替.
PS我相信测试; 我不是一个'模拟测试'的粉丝,所以除了嘲笑我还需要理由.