Thẻ
#java

Ngày 14 của 99 Ngày Java: extends trao gia tài từ lớp cha, override với @Override và super., thứ tự khai sinh cha trước con sau qua super(...), protected trả nợ Ngày 13, và phép thử is-a vs has-a — khi nào nên composition thay vì kế thừa.

Ngày 13 của 99 Ngày Java: vì sao public field là thảm họa, công thức private + getter + nghiệp vụ có kiểm soát (không setter bừa bãi), bốn mức access modifier với chiến lược kín nhất có thể, và quy ước JavaBean bắt tay framework.

Ngày 12 của 99 Ngày Java: constructor ép đối tượng chào đời đầy đủ dữ liệu, default constructor — món quà có điều kiện của compiler, overload constructor nối nhau bằng this(...), khối khởi tạo instance/static và thứ tự thực thi khi new.

Ngày 11 của 99 Ngày Java — mở màn OOP: class là khuôn, object là bánh; field & method của đối tượng; new đúc đối tượng trên heap và biến chỉ giữ tham chiếu; giá trị mặc định của field; và this — con trỏ "chính tôi" trong method.

Ngày 10 của 99 Ngày Java: khai báo method với tham số và giá trị trả về, overloading — trùng tên khác chữ ký, sự thật đằng sau "Java luôn pass-by-value" (vì sao sửa mảng thì thấy mà gán lại thì không), và phạm vi biến local.

Ngày 09 của 99 Ngày Java: vì sao String bất biến và mọi method đều trả chuỗi mới, String pool và bẫy kinh điển equals vs ==, hộp đồ nghề method hay dùng (length, substring, strip, split…), nối chuỗi bằng + và bẫy hiệu năng trong vòng lặp.

Ngày 08 của 99 Ngày Java: khai báo & khởi tạo mảng, chỉ số từ 0 và ArrayIndexOutOfBoundsException, duyệt bằng for/for-each, mảng 2 chiều & răng cưa, hộp đồ nghề java.util.Arrays — và bẫy tham chiếu: gán mảng không phải là copy.

Ngày 07 của 99 Ngày Java: for khi biết số lần, while/do-while khi lặp theo điều kiện, break & continue lái dòng chảy, label cho vòng lặp lồng nhau — và 3 cái bẫy: dấu chấm phẩy thừa, lặp vô hạn, off-by-one.
