HOWTO · Java
Java 空构造函数
本教程演示什么是 Java 中的空构造函数。
本页内容
当我们需要通过我们的框架反射创建一个新实例时,需要一个空的构造函数。如果我们不为该类创建任何其他带有参数的构造函数,我们就不需要创建一个空的构造函数,因为已经存在一个默认值。
本教程演示了 Java 中的空构造函数以及如何使用它。
Java 中的空构造函数
在创建构造函数时,我们必须保证构造函数与类同名,并且不返回任何值;空构造函数是不需要任何参数的构造函数,默认构造函数也可以是空构造函数。
一个空的构造函数为我们提供了一个对象的实例。我们可能需要使用 setter 为其设置必要的属性。
当我们想要确保创建的任何实例始终有效并且变量已初始化时,可以使用空构造函数。我们可以使用空构造函数来定义默认值。
让我们看一个 Java 代码中的示例。
package delftstack;
class Delftstack {
String employee_name;
int id;
public Delftstack() {
// Empty Constructor
}
public Delftstack(String employee_name, int id) {
this.employee_name = employee_name;
this.id = id;
}
public void print() {
System.out.println(toString());
}
}
public class Main {
public static void main(String[] args) {
Delftstack Demo = new Delftstack();
System.out.println(Demo.employee_name);
System.out.println(Demo.id);
}
}
输出将是:
null
0
上面的代码显示了两个没有参数和数据的 Delftstack() 构造函数,这就是空构造函数)。
这些构造函数主要用作默认构造函数,我们可以在其中设置默认数据,以便在没有传递参数时使用默认数据。
让我们看一个默认构造函数的示例。
package delftstack;
class Delftstack {
String employee_name;
int id;
public Delftstack() {
employee_name = "John";
id = 10;
}
public Delftstack(String employee_name, int id) {
this.employee_name = employee_name;
this.id = id;
}
}
public class Main {
public static void main(String[] args) {
Delftstack Demo = new Delftstack();
System.out.println(Demo.employee_name);
System.out.println(Demo.id);
}
}
上面的代码将空构造函数转换为默认构造函数。
见输出:
John
10
在 Java 中,编译器的默认构造函数大多是在没有定义空构造函数时插入的。