Một hàm tạo tương tự như phương thức và nó được gọi tại thời điểm tạo một đối tượng của lớp, nó thường được sử dụng để khởi tạo các biến thể hiện của một lớp. Các hàm tạo có cùng tên với lớp của chúng và không có kiểu trả về.
Hàm tạo mặc định trong Java khởi tạo các thành viên dữ liệu của lớp thành các giá trị mặc định của chúng, chẳng hạn như 0 đối với int, 0.0 đối với double, v.v. Hàm tạo này được trình biên dịch Java thực hiện theo mặc định nếu không có hàm tạo rõ ràng nào được người dùng triển khai cho lớp .
Nếu bạn quan sát ví dụ sau, chúng tôi không cung cấp bất kỳ hàm tạo nào cho nó.
public class Sample { int num; public static void main(String args[]){ System.out.println(new Sample().num); } }
Nếu bạn biên dịch và chạy chương trình trên, hàm tạo mặc định sẽ khởi tạo biến số nguyên num bằng 0 và kết quả là bạn sẽ nhận được 0.
javap lệnh hiển thị thông tin về các trường, hàm tạo và phương thức của một lớp. Nếu bạn (sau khi biên dịch) chạy lớp trên bằng lệnh javap, bạn có thể quan sát hàm tạo mặc định được trình biên dịch thêm vào như hình dưới đây -
D:\>javap Sample Compiled from "Sample.java" public class Sample { int num; public Sample(); public static void main(java.lang.String[]); }
Ví dụ
public class Sample{ int num; Sample(){ num = 100; } Sample(int num){ this.num = num; } public static void main(String args[]){ System.out.println(new Sample().num); System.out.println(new Sample(1000).num); } }
Đầu ra
100 1000