Chào mừng các bạn đến với bài học Java số 32, bài học về tính trừu tượng (abstraction). Trong bài học này, chúng ta sẽ khám phá những khía cạnh cốt lõi của lập trình hướng đối tượng và tìm hiểu về tính trừu tượng.
Tính Trừu Tượng là Gì?
Trừu tượng có nghĩa là cái gì đó không có thực. trong lập trình hướng đối tượng, tính trừu tượng đề cập đến một lớp có một đặc tính trừu tượng, không có thực. Lớp trừu tượng chỉ là một "xác không hồn", một cái sườn mà bạn có thể tạo ra các lớp con dựa vào sự ràng buộc từ cái sườn này.
Khai Báo Lớp Trừu Tượng
Để khai báo một lớp trừu tượng, chỉ cần thêm từ khóa "abstract" trước từ khóa "class". Ví dụ:
abstract class TenLop { // các thuộc tính // các phương thức }
Lớp trừu tượng không thể được sử dụng để tạo ra các đối tượng như các lớp bình thường khác. Tuy nhiên, nó có thể được sử dụng làm cơ sở để tạo ra các lớp con và thừa kế các thuộc tính và phương thức từ lớp trừu tượng này.
Phương Thức Trừu Tượng
Một phương thức trừu tượng là một phương thức có từ khóa "abstract" khi khai báo. Phương thức trừu tượng buộc phải không có thân hàm, chỉ khai báo tên, các tham số truyền vào, kiểu trả về và kết thúc khai báo bằng dấu chấm phẩy. Khi một lớp kế thừa từ lớp trừu tượng, nó phải hiện thực nội dung cho tất cả các phương thức trừu tượng bằng cách ghi đè chúng.
Ví dụ:
kha_nang_truy_cap abstract kieu_tra_ve ten_phuong_thuc (cac_tham_so_truyen_vao);
Tính Trừu Tượng Trong Hệ Thống Java
Trong Java platform, có rất nhiều lớp trừu tượng được xây dựng sẵn. Khi bạn kế thừa từ các lớp này, bạn sẽ bắt buộc phải hiện thực các phương thức trừu tượng từ lớp gốc. Ví dụ, khi bạn kế thừa từ lớp "Graphics", bạn sẽ phải hiện thực nhiều phương thức trừu tượng từ lớp này.
Điều tương tự cũng áp dụng cho lớp "Number" và các lớp khác trong Java platform.
Khi xây dựng ứng dụng class='hover-show-link replace-link-5' ứng dụng span class='hover-show-content'> Android, bạn sẽ gặp phải việc tùy chỉnh các lớp trừu tượng có sẵn từ hệ thống này.
Kết Luận
Tính trừu tượng là một khía cạnh quan trọng của lập trình hướng đối tượng. Nó cho phép bạn tạo ra các lớp không thể khởi tạo đối tượng từ chúng và ràng buộc các lớp con phải hiện thực nội dung cho các phương thức trừu tượng. Việc hiểu rõ về tính trừu tượng sẽ giúp bạn xây dựng các ứng dụng class='hover-show-link replace-link-5' ứng dụng span class='hover-show-content'> linh hoạt và dễ bảo trì.
Trong bài học tiếp theo, chúng ta sẽ tìm hiểu về interface, một anh em gần gũi với tính trừu tượng.