1、Java 构造函数
Java中的构造函数是一种用于初始化对象的特殊方法。 创建类的对象时将调用构造函数。 可用于设置对象属性的初始值:
例如:
创建构造函数:
// 定义Main类
public class Main {
int x; // 创建一个类属性
// 为Main类创建一个类构造函数
public Main() {
x = 5; // 为类属性x设置初始值
}
public static void main(String[] args) {
Main myObj = new Main(); // 创建Main类的对象(这将调用构造函数)
System.out.println(myObj.x); // 输出x的值
}
}
// 输出 5
注意:构造函数名称必须匹配类名称,并且不能具有返回类型(例如,void
)。 另外注意,在创建对象时会调用构造函数。默认情况下,所有类都具有构造函数:如果未创建类构造函数,则Java会为创建一个。 但是将无法设置对象属性的初始值。
2、构造函数参数
构造函数还可以使用参数来初始化属性。
构造函数还可以使用参数来初始化属性。
下面的示例向构造函数添加一个int y
参数。在构造函数内部,我们将x设置为y(x = y)。当我们调用构造函数时,我们将一个参数传递给构造函数(5),它将x的值设置为5:
例如:
public class Main {
int x;
public Main(int y) {
x = y;
}
public static void main(String[] args) {
Main myObj = new Main(5);
System.out.println(myObj.x);
}
}
// 输出 5
可以根据需要设置任意个数的参数:
例如:
public class Main {
int age;
String name;
public Main(int a, String n) {
age = a;
name = n;
}
public static void main(String[] args) {
Main myLanguage = new Main(3, "cjavapy");
System.out.println(myLanguage.age + " " + myLanguage.name);
}
}
// 输出 3 cjavapy
3、构造函数与普通函数的区别
1)一般函数是用于定义对象应该具备的功能。而构造函数定义的是,对象在调用功能之前,在建立时,应该具备的一些内容。也就是对象的初始化内容。
2)构造函数是在对象建立时由jvm调用, 给对象初始化。一般函数是对象建立后,当对象调用该功能时才会执行。
3)普通函数可以使用对象多次调用,构造函数就在创建对象时调用。
4)构造函数的函数名要与类名一样,而普通的函数只要符合标识符的命名规则即可。
5)构造函数没有返回值类型。