【问题标题】:What are the benefits of a zero argument constructor? when is it ideal? [duplicate]零参数构造函数有什么好处?什么时候理想? [复制]
【发布时间】:2025-12-08 09:45:02
【问题描述】:

当在编译期间创建默认的无参数构造函数时,为什么有人想要定义零参数构造函数?这样做有什么好处吗?在任何情况下,最好在一个类中定义一个零参数构造函数,以防止在编译时创建默认值?

【问题讨论】:

    标签: java


    【解决方案1】:

    简单:您可以在需要时定义它。

    例如,使用一些默认值调用另一个构造函数,然后另一个构造函数使用这些默认值来初始化类的字段。

    当你写下一个除了调用超级构造函数之外什么都不做的“空”构造函数时,那么肯定——你编写了应该消失的无用代码。

    【讨论】:

    • 啊,所以在您可能想要访问和调用其他类的构造函数的情况下,它是理想的选择?
    • 阅读我的答案 - 必要时使用它。
    【解决方案2】:

    如果用户未定义任何参数化构造函数,则 java 在内部添加默认构造函数。它将任何未初始化的字段初始化为其默认值。 赞int to 0 string to null object to null

    【讨论】:

      【解决方案3】:

      如果您想在创建类的新对象后立即执行初始化函数,则需要它。例如:

      公共类示例{

      public Example() {
              init();
          } 
      
          public void init() {
              //do some Stuff
          } 
      

      }

      但是仅仅定义它而不做任何事情是没有意义的。

      【讨论】: