【问题标题】:What would happen if Java class has no constructor? [duplicate]如果 Java 类没有构造函数会怎样? [复制]
【发布时间】:2017-12-19 16:50:56
【问题描述】:

我被构造函数迷惑了很多天,看了很多代码和书籍,但仍然没有完全理解构造函数到底是什么。 谁能说明没有 Java 中的构造函数会发生什么?

【问题讨论】:

  • 您将无法创建类的对象/实例,基本上:您只能使用原始数据类型。
  • 即使你不写任何构造函数,那里也存在一个默认构造函数。所以你仍然可以在不传递任何参数的情况下创建对象。但是如果你想通过传递参数来创建一个对象,你必须定义一个构造函数。
  • 顺便说一下,所有的类都继承自Object类,所以如果你不在你的类上写一个构造函数,你仍然有一个来自Object类的构造函数。所以所有的类都有一个构造函数。
  • @NabinBhandari 问题不是:“如果我不放置构造函数怎么办”,而是“如果 Java 中没有构造函数怎么办”。解释默认构造函数很好,但在这里并不重要。
  • 请理解,SO 不能代替您进行 学习 部分。那里有无数的书解释什么是构造函数,如何使用它们,如果你在课堂上不提供构造函数会发生什么。

标签: java


【解决方案1】:

所有类都有一个构造函数。如果你不指定一个,你会得到一个没有参数的默认构造函数。

所以当你这样做时:

class Test {

}

你实际上会得到这个:

class Test {
  Test() {
    super(); // This is a call to the constructor of the Object class.
  }
}

构造函数允许您使用new 关键字创建类的实例。像这样:

Test test = new Test(); // This calls the default constructor.

如果 Java 中没有构造函数,您将无法创建对象。

【讨论】:

    猜你喜欢
    • 2014-12-28
    • 2021-07-24
    • 2010-10-24
    • 2021-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    相关资源
    最近更新 更多