【问题标题】:Is there any advantage to using a object based run() method instead of the static main?使用基于对象的 run() 方法而不是静态 main 有什么好处吗?
【发布时间】:2017-01-18 23:22:15
【问题描述】:

使用下面的代码有什么好处

public void run(){
     //Code
}
public static void main(String[] args){
    new Main().run();
}

而不是

public static void main(String[] args){
    //code
}

对于您在编程介绍期间编写的小程序?

我看不出这将如何节省内存或提高性能?

【问题讨论】:

  • 我只能说Java是OOP语言,但据我所知,这是个人喜好。
  • 我想如果您的对象也是在此特定应用程序之外使用的东西,它会很有用。我原以为它会使用更多的内存,但不足以让它产生任何影响。另外我猜有些人的风格是尽快进入非静态上下文。
  • 将处理命令行参数解析的代码部分与“业务逻辑”分开也很有用。前者可以留在main(或主类内),后者可以住在另一个类。
  • 更多(不是很吸引人的)讨论:stackoverflow.com/questions/33812496/…

标签: java object static main


【解决方案1】:

出于教学目的或任何其他目的,记忆力的差异可以忽略不计。如果代码访问的数据相同并且没有其他子例程,则在子例程中隐藏代码也不再是面向对象的。

所以,除非你的代码实际上比你展示的要多,否则我会使用不带 run 函数的更简单的变体。

【讨论】:

    猜你喜欢
    • 2018-10-27
    • 2011-01-27
    • 2011-01-21
    • 1970-01-01
    • 2021-04-10
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    相关资源
    最近更新 更多