Lập Trình Hướng Đối Tượng Trong Java Bài 5: Phương Thức Khởi Tạo (Constructor) Trong Java
1. Khái niệm:
Constructor trong Java là một kiểu phương thức đặc biệt mà được sử dụng để khởi tạo đối tượng. Constructor được triệu hồi tại thời gian tạo đối tượng. Nó xây dựng giá trị, cung cấp dữ liệu cho đối tượng, đó là lý do nó được gọi là Constructor.Khi bàn luận về các lớp, một trong những chủ đề quan trọng là các constructor. Mỗi lớp có ít nhất một constructor. Nếu chúng ta không viết một constructor một cách rõ ràng cho một lớp thì bộ biên dịch Java xây dựng một constructor mặc định cho lớp đó.
Mỗi khi một đối tượng mới được tạo ra, ít nhất một constructor sẽ được gọi. Quy tắc chính của các constructor là chúng có cùng tên như lớp đó. Một lớp có thể có nhiều hơn một constructor.
Sau đây là ví dụ về một constructor:
public class Xecon{ public Xecon(){ } public Xecon(String ten){ // Contructor nay co mot tham so la ten. } }
2. Nạp chồng Constructor trong Java
Giống như các phương thức khác, phương thức khởi tạo lớp có thể bị nạp chồng (overload)
Ví dụ: Tạo constructor có 2 tham số truyền vào và 1 constructor overload constructor đó, với 3 tham số truyền vào cho lớp SinhVien với các thuộc tính hoTen, namSinh, diemTb, lop.
Ví dụ: Tạo constructor có 2 tham số truyền vào và 1 constructor overload constructor đó, với 3 tham số truyền vào cho lớp SinhVien với các thuộc tính hoTen, namSinh, diemTb, lop.
class SinhVien {
private String hoTen;
private int namSinh;
private float diemTb;
private String lop;
public SinhVien() {
}
public SinhVien(String hoTen, int namSinh) {
this.hoTen = hoTen;
this.namSinh = namSinh;
this.lop = "At7a";
}
//Overloading constructor method
public SinhVien(String hoTen, int namSinh, float diemTb) {
this.hoTen = hoTen;
this.namSinh = namSinh;
this.diemTb = diemTb;
this.lop = "At7a";
}
}
public class Hocjava {
public static void main(String[] args) {
SinhVien a = new SinhVien("Vũ Văn T", 1992);
SinhVien b = new SinhVien("Nguyen Van Tung", 1994, 9.0f);
}
}
private String hoTen;
private int namSinh;
private float diemTb;
private String lop;
public SinhVien() {
}
public SinhVien(String hoTen, int namSinh) {
this.hoTen = hoTen;
this.namSinh = namSinh;
this.lop = "At7a";
}
//Overloading constructor method
public SinhVien(String hoTen, int namSinh, float diemTb) {
this.hoTen = hoTen;
this.namSinh = namSinh;
this.diemTb = diemTb;
this.lop = "At7a";
}
}
public class Hocjava {
public static void main(String[] args) {
SinhVien a = new SinhVien("Vũ Văn T", 1992);
SinhVien b = new SinhVien("Nguyen Van Tung", 1994, 9.0f);
}
}
Post a Comment