Java构造函数是一个特殊的函数,它在创建对象时自动调用。构造函数的名称与类名完全相同,其目的是初始化对象的状态。
一、Java构造函数基础
Java中的构造函数主要用于初始化新创建的对象。它与类名相同,并且没有返回类型,包括void。
public class Car { String model; // 声明变量 // 构造函数 Car(String m) { model = m; } }
在上述例子中,”Car”是构造函数,当我们实例化一个新的对象”myCar”后,”myCar”的属性”model”会自动被初始化为参数传递的值。
Car myCar = new Car("Tesla");
二、无参数构造函数与有参数构造函数
Java构造函数可以分为两种:无参数构造函数和有参数构造函数。无参数构造函数没有参数,有参数构造函数则可以传递一系列参数来初始化对象。
public class Car { String model; // 无参数构造函数 Car() { model = "Unknown"; } // 有参数构造函数 Car(String m) { model = m; } }
在上述例子中,提供了两种构造函数,分别是无参数构造函数和有参数构造函数,实例化对象时,可以根据所提供的参数选择相应的构造函数。
Car myCar1 = new Car(); // myCar1.model is "Unknown" Car myCar2 = new Car("Tesla"); // myCar2.model is "Tesla"
三、构造函数的重载
Java支持构造函数重载,即在一个类中可以定义多个名字相同但参数列表不同的构造函数。
public class Car { String model; int year; // 构造函数1 Car() { model = "Unknown"; year = 0; } // 构造函数2 Car(String m) { model = m; year = 0; } // 构造函数3 Car(String m, int y) { model = m; year = y; } }
在上述例子中,定义了三个构造函数:无参数构造函数、只有一个参数的构造函数和有两个参数的构造函数,这就是构造函数的重载。
Car myCar1 = new Car(); Car myCar2 = new Car("Tesla"); Car myCar3 = new Car("Tesla", 2021);
原创文章,作者:GHZC,如若转载,请注明出处:https://www.beidandianzhu.com/g/1383.html