Một trong những tính chất quan trọng trong lập trình hướng đối tượng chúng ta sẽ cùng tìm hiểu trong bài này đó là tính trừu tượng (Abstract). Ở bài trước chúng ta đã biết cách xây dựng lớp đối tượng và tìm hiểu tính kế thừa bạn có thể xem qua :
Lớp trừu tượng (Abstract Class) là gì?– Lớp trừu tượng (Abstract Class) là lớp dùng để định nghĩa những thuộc tính và hành vi chung của những lớp khác. Nói cách khác lớp trừu tượng là lớp dùng để khai báo thuộc tính và phương thức cho các lớp khác sử dụng.
Bạn đang xem: Tính trừu tượng là gì
– Lớp trừu tượng không cho phép khởi tạo tham số, chỉ khai báo.
– Lớp trừu tượng được dùng như một lớp cha (base class) của các lớp có cùng bản chất. Bản chất ở đây được hiểu là kiểu, loại, nhiệm vụ của class.
– Mỗi lớp dẫn xuất (derived class – lớp con) có thể thừa kế từ một lớp trừu tượng.
– Từ khóa abstract được dùng để định nghĩa một Lớp trừu tượng.
Một số đặc điểm trong Abstract– Tính trừu tượng được sử dụng trong các tình huống đối tượng có tồn tại nhưng thực sự nó thuộc một đối tượng con cụ thể nào đó.
– Đặc tả abstract áp dụng cho :
+ Lớp gọi là lớp trừu tượng (abstract class)
+ Hàm gọi là hàm trừu tượng (abstract method)
abstract class abstract (Đối số); // Chỉ khai báo mà không hiện thực

Tính trừu tượng trong lập trình hướng đối tượng Java
– Lớp trừu tượng không khởi tạo thực thể vì chưa hiện thực đầy đủ
– Lớp trừu tượng chứa một hoặc nhiều hàm trừu tượng. Tuy nhiên, không có hàm trừu tượng vẫn khai báo lớp trừu tượng.
– Một lớp chứa hàm trừu tượng thì lớp đó phải là lớp trừu tượng.
– Một lớp thừa kế lớp trừu tượng phải hiện thực tất cả các hàm trừu tượng hoặc lớp đó cũng là lớp trừu tượng.
– Lớp trừu tượng hiện thực (Implements) một giao diện (Interface) và có thể không hiện thực một hàm nào đó của giao diện
Ví dụ : Shape (Hình) là một đối tượng trừu tượng.

Lời kết : Tính trừu tượng trong lập trình hướng đối tượng là tính chất đơn giản nhưng không kém phần quan trọng. Hiểu một cách cốt lõi khi sử dụng abstract class đó là nếu trong class abstract khai báo phương thức abstract thì bắt buộc các class khác khi kế thừa nó phải định nghĩa lại. Đây là tính chất sẽ sử dụng thường xuyên trong các bài toán liên quan đến trừu tượng sau này.