类是OOP(面向对象编程)的核心概念。Java提供了构造函数的概念,它与类直接相关,因为构造函数的名称与类的名称完全相同。在java中,构造函数的主要目的是初始化类的对象。一个java类可以有多个构造函数,但它们的定义在参数方面必须是不同的。
本文将全面介绍Java构造函数,为此将解释下面列出的概念。
那么,让我们开始吧!
什么是Java构造函数
它是一种特殊的方法,其名称与类的名称完全相同,但不保留任何返回类型。当有人创建一个类的对象时,该类的默认构造函数会被自动调用。java构造函数用于初始化对象,在java中,构造函数可以接受也可以不接受参数。
Java构造函数的类型
在java中,构造函数有以下几种类型。
- 默认构造函数。
- 参数化构造函数。
缺省构造函数
在程序执行过程中,Java编译器为每一个类自动创建一个构造函数(没有参数),称为默认构造函数。下面的片段将显示Java构造函数的基本语法。
classClassName {
ClassName () {
// code
}
}
在这里,构造函数的名称与类的名称完全相同,并且没有任何返回类型。
示例1
下面的代码块将帮助你理解构造函数的工作。
publicclassConstructDemo {
String empName;
intempId;
ConstructDemo() {
System.out.println("Constructor Invoked!!");
empName = "Joe";
empId = 13;
}
publicstaticvoidmain(String[] args) {
ConstructDemo object = newConstructDemo();
System.out.println("Employee name: " + object.empName);
System.out.println("Employee ID: " + object.empId);
}
}
上述代码块执行了以下任务。
- 创建了两个类属性。
- 在构造函数中初始化了这些属性。
- 使用new操作符创建一个对象。
- 使用类对象访问类属性的值,并将其打印在控制台。

上面的片段验证了当我们创建一个对象时,构造函数会被自动调用。
参数化构造器
可以接受多个值/参数作为参数的构造函数被称为参数化构造函数。下面给出的片段将展示参数化构造函数的基本语法。
classClassName {
ClassName (int val1, int val2, int val3) {
// code
}
}
这里,ClassName(int val1, val2, val3) 是一个接受三个值/参数的参数化构造函数。
示例2
下面给出的代码块将提供对参数化构造函数的详细理解。
publicclassParameterizedConstruct {
int x, y;
ParameterizedConstruct(int val1, int val2) {
System.out.println("Constructor Invoked!!");
x = val1;
y = val2;
}
voidproduct(){
int pro;
pro = x*y;
System.out.println("Result: " + pro);
}
publicstaticvoidmain(String[] args) {
ParameterizedConstruct object = newParameterizedConstruct(12, 10);
object.product();
}
}
上述代码块执行了以下任务。
- 创建了两个类属性。
- 一个参数化的构造函数。
- 在构造函数中初始化了这些属性。
- 创建了一个用户定义的方法 "product()"。
- 在该方法中执行了乘法。
- 创建一个对象,并为参数化构造函数传递值。
- 使用该类的对象调用product()方法。

输出结果证明了参数化构造函数的正确性。
总结
在Java中,构造函数是一个特殊的方法,它的名称与类的名称完全相同,但不保留任何返回类型。当有人创建一个类的对象时,该类的默认构造函数会被自动调用/调用。java的构造函数用于初始化对象,在java中,构造函数可以接受也可以不接受参数。不带任何参数的构造器被称为默认构造器,而带参数的构造器则被称为参数化构造器。这篇文章解释了java构造函数的不同方面,为了深入理解,它提供了几个合适的例子。