Constructor tương tự phương thức, được gọi khi tạo đối tượng, dùng để khởi tạo biến instance. Constructor trùng tên class và không có kiểu trả về.
Có 2 loại constructor chính:
- Constructor có tham số (Parameterized Constructor)
- Constructor không tham số (No-arg Constructor)
1. Constructor có tham số (Parameterized Constructor)
Chấp nhận tham số để khởi tạo biến instance. Cho phép khởi tạo động giá trị khác nhau cho mỗi đối tượng.
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("Nhập số nguyên: ");
int num = sc.nextInt();
System.out.println("Nhập chuỗi: ");
String data = sc.next();
System.out.println("Nhập số thực: ");
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);
}
}
Kết quả
Nhập số nguyên: 1024 Nhập chuỗi: test Nhập số thực: 11.2 1024 test 11.2
2. Constructor không tham số (No-arg Constructor)
Không chấp nhận tham số, khởi tạo biến với giá trị mặc định hoặc giá trị cố định do lập trình viên định nghĩa.
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);
}
}
Kết quả
100 test 125.33