构造函数与method相似,它在创建类的对象时被调用,通常用于初始化类的实例变量。构造函数与其类具有相同的名称,并且没有返回类型。
有两种类型的构造函数:参数化构造函数和无参数构造函数。
参数化的构造函数接受可以用来初始化实例变量的参数。使用参数化的构造函数,可以在使用不同的值实例化类时动态地初始化类变量。
import java.util.Scanner;
public class Test {
int num;
String data;
float flt;
Test(int num, String data, float flt){
this.num= num;
this.data= data;
this.flt= flt;
}
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.println("输入一个整数值: ");
int num = sc.nextInt();
System.out.println("输入一个字符串值: ");
String data = sc.next();
System.out.println("输入浮点值: ");
float flt = sc.nextFloat();
Test obj = new Test(num, data, flt);
System.out.println(obj.num);
System.out.println(obj.data);
System.out.println(obj.flt);
}
}输出结果输入一个整数值: 1024 输入一个字符串值: test 输入浮点值: 11.2 1024 test 11.2
no-arg构造函数不接受任何参数,它使用各自的默认值实例化类变量(即,对于对象而言为null,对于float和double为0.0,对于Boolean为false,对于byte,short,int和long,为0)。
public class Test {
int num;
String data;
float flt;
Test(){
this.num= 100;
this.data= "test";
this.flt= 125.33f;
}
public static void main(String args[]){
Test obj = new Test();
System.out.println(obj.num);
System.out.println(obj.data);
System.out.println(obj.flt);
}
}输出结果100 test 125.33