Khai báo hàm khởi tạo trong Java – Constructor Declarations
Bài viết được sự cho phép của tác giả Trần Hữu Cương
Constructor Declarations
Trong Java, các đối tượng được khởi tạo thông qua hàm khởi tạo (constructor). Mỗi lần bạn tạo mới một đối tượng sẽ có ít nhất một hàm khởi tạo được thực thi.
Mỗi class đều có một hàm khởi tạo, nếu bạn không khai báo thì complier sẽ tự động khai báo một hàm khởi tạo không tham số cho bạn.
Có rất nhiều nguyên tắc khác nhau liên quan đến hàm khởi tạo (sẽ tìm hiểu ở bài sau). Ở bài này chúng ta sẽ chỉ tập trung vào các nguyên tắc khai báo cơ bản.
Hàm khởi tạo cũng được coi như một hàm với kiểu dữ liệu trả về của hàm khởi tạo chính là một thể hiện của class chứa nó. Hàm khởi tạo có thể đi kèm với các access modifier
Tìm việc làm Java cho sinh viên ít kinh nghiệm
Ví dụ ta có class sau:
public class Person { private String name; private String address; }
Các hàm khởi tạo hợp lệ:
Person() { } public Person() { } protected Person() { } private Person() { } public Person(String name, String address) { this.name = name; this.address = address; } public Person(String name) { this.name = name; }
Các hàm khởi tạo không hợp lệ:
void Person() {} // đây là một method, không khải constructor static Person() {} // không thể đi kèm với từ khóa static final Person() {} // không thể đi kèm với từ khóa final abstract Person() {} // không thể đi kèm với từ khóa abstract
Một class có thể có nhiều hàm khởi tạo (tương tự như một class có thể có nhiều hàm cùng tên – tính đa hình) nhưng tham số đầu vào của các hàm khởi tạo phải khác nhau.
Khi bạn gọi lệnh new
thì đầu tiên nó sẽ chạy vào hàm khởi tạo của đối tượng rồi sau đấy mới chạy các khối static, method…
Bài viết gốc được đăng tải tại stackjava.com
Có thể bạn quan tâm:
- Ngôn ngữ Java: Không bao giờ là quá trễ để học thêm về nó
- 5 điều lập trình viên Java Developer chắc chắn sẽ thích ở Kotlin
- Học TypeScript trong 30 phút
Xem thêm các việc làm java Developer hấp dẫn tại đây
- B BenQ RD Series – Dòng Màn Hình Lập Trình 4k+ Đầu Tiên Trên Thế Giới
- i iOS 18 có gì mới? Có nên cập nhật iOS 18 cho iPhone của bạn?
- G Gamma AI là gì? Cách tạo slide chuyên nghiệp chỉ trong vài phút
- P Power BI là gì? Vì sao doanh nghiệp nên sử dụng PBI?
- K KICC HCMC x TOPDEV – Bước đệm nâng tầm sự nghiệp cho nhân tài IT Việt Nam
- T Trello là gì? Cách sử dụng Trello để quản lý công việc
- T TOP 10 SỰ KIỆN CÔNG NGHỆ THƯỜNG NIÊN KHÔNG NÊN BỎ LỠ
- T Tìm hiểu Laptop AI – So sánh Laptop AI với Laptop thường
- M MySQL vs MS SQL Server: Phân biệt hai RDBMS phổ biến nhất
- S SearchGPT là gì? Công cụ tìm kiếm mới có thể đánh bại Google?