java是否适合使用main方法作为起点?
我想知道:在一个更短(但可能更长)的程序中,主方法的最佳用途是什么
我的意思是:当我开始一个项目时。我通常从MainController
开始。我用它来控制程序的流程。过去(现在)我一直在做这样的事情:
public class MainController {
//Note, normally I'll do some singleton patter stuff here, but I believe that's irrelevant to this question
public static void main(String[] args) {
MainController mc = new MainController();
mc.begin();
}
public void begin() {
//my code here
}
}
我想听听关于的意见:将主代码放在主方法中(如下面的代码)还是像我一直在做的那样(如前面的代码)更好
public static void main(String[] args) {
//my code here
}
注:我意识到这可能是一个基于观点的回答,但我很好奇投票结果如何。谢谢
# 1 楼答案
至少为了可读性,我总是从你的第一种方法开始。从某种意义上说,我可以选择为我的自定义方法命名任何我想要的名称。而不是把它全部放在main方法中,main方法并没有真正描述我想要完成的任务
也就是说,为了平衡起见,让我提供一个计数器:您的第一种方法将需要创建一个对象,并为此对象调用一个方法,这是一种开销。但事实上,这并不重要
# 2 楼答案
最好使用您首先提到的方法,即
原因是,
begin()
方法应该做begin()
应该做的事情。正如我们针对high cohesion的目标一样,这应该是一种方法。每个方法都在做它应该做的事情main()
只是开始你的程序的一个点,这并不意味着它应该做你能想到的所有关于这个特定类的事情