Trừu tượng trong OOP là gì?
Trừu tượng hóa là chọn dữ liệu từ một nhóm lớn hơn để chỉ hiển thị các chi tiết có liên quan đến đối tượng. Nó giúp giảm sự phức tạp và nỗ lực lập trình. Trong Java, sự trừu tượng hóa được thực hiện bằng cách sử dụng các lớp và giao diện Trừu tượng. Đây là một trong những khái niệm quan trọng nhất của OOP.
Hãy nghiên cứu khái niệm trừu tượng với một ví dụ
Giả sử bạn muốn tạo một ứng dụng ngân hàng và bạn được yêu cầu thu thập tất cả thông tin về khách hàng của bạn. Có nhiều khả năng bạn sẽ đưa ra thông tin sau đây về khách hàng
Nhưng, không phải tất cả các thông tin trên là bắt buộc để tạo một ứng dụng ngân hàng.
Vì vậy, bạn chỉ cần chọn thông tin hữu ích cho ứng dụng ngân hàng của mình từ nhóm đó. Dữ liệu như tên, địa chỉ, thông tin thuế, v.v ... có ý nghĩa đối với ứng dụng ngân hàng
Vì chúng tôi đã tìm nạp / xóa / chọn thông tin khách hàng từ một nhóm lớn hơn, quá trình này được gọi là Trừu tượng hóa.
Tuy nhiên, thông tin tương tự một khi được trích xuất có thể được sử dụng cho một loạt các ứng dụng. Chẳng hạn, bạn có thể sử dụng cùng một dữ liệu cho ứng dụng bệnh viện, ứng dụng cổng thông tin việc làm, cơ sở dữ liệu của Chính phủ, v.v ... với rất ít hoặc không sửa đổi. Do đó, nó trở thành dữ liệu chủ của bạn. Đây là một lợi thế của Trừu tượng.
Làm thế nào để đạt được sự trừu tượng?
Sự trừu tượng hóa trong Java có thể đạt được bằng cách sử dụng Lớp trừu tượng và Phương thức trừu tượng.
Lớp trừu tượng (Abstract Class)
Một lớp được khai báo là trừu tượng, được gọi là lớp trừu tượng. Nó có thể có phương pháp trừu tượng cũng như phương pháp cụ thể. Một lớp bình thường không thể có các phương thức trừu tượng.
Phương thức trừu tượng (Abstract Method)
Một phương thức không có cơ thể được gọi là Phương pháp trừu tượng. Nó phải được khai báo trong một lớp trừu tượng. Phương thức trừu tượng sẽ không bao giờ là cuối cùng vì lớp trừu tượng phải thực hiện tất cả các phương thức trừu tượng.
Quy tắc của phương pháp trừu tượng
- Các phương pháp trừu tượng không có triển khai; nó chỉ có chữ ký phương thức
- Nếu một lớp đang sử dụng một phương thức trừu tượng thì chúng phải được khai báo là trừu tượng. Điều ngược lại không thể đúng. Điều này có nghĩa là một lớp trừu tượng không nhất thiết phải có một phương thức trừu tượng.
- Nếu một lớp thông thường mở rộng một lớp trừu tượng, thì lớp đó phải thực hiện tất cả các phương thức trừu tượng của cha mẹ trừu tượng
Sự khác biệt giữa Trừu tượng và Đóng gói
Trừu tượng | Đóng gói |
Trừu tượng giải quyết các vấn đề ở cấp thiết kế. | Đóng gói giải quyết nó mức độ thực hiện. |
Trừu tượng là về việc ẩn các chi tiết không mong muốn trong khi hiển thị hầu hết các thông tin cần thiết. | Đóng gói có nghĩa là ràng buộc mã và dữ liệu vào một đơn vị. |
Trừu tượng cho phép tập trung vào những gì đối tượng thông tin phải chứa | Đóng gói có nghĩa là ẩn các chi tiết bên trong hoặc cơ học về cách một đối tượng làm điều gì đó vì lý do bảo mật. |
Sự khác biệt giữa lớp trừu tượng và giao diện
Lớp trừu tượng (Abstract Class) | Giao diện (Interface) |
Một lớp trừu tượng có thể có cả phương thức trừu tượng và không trừu tượng.
|
Giao diện có thể chỉ có các phương thức trừu tượng.
|
Nó không hỗ trợ nhiều kế thừa.
|
Nó hỗ trợ nhiều kế thừa.
|
Nó có thể cung cấp việc thực hiện giao diện.
|
Nó không thể cung cấp việc thực hiện các lớp trừu tượng.
|
Một lớp trừu tượng có thể có các phương thức công khai được bảo vệ và trừu tượng.
|
Một giao diện chỉ có thể có các phương thức trừu tượng công khai.
|
Một lớp trừu tượng có thể có biến cuối cùng, tĩnh hoặc tĩnh cuối cùng với bất kỳ chỉ định truy cập nào.
|
Giao diện chỉ có thể có một biến cuối tĩnh công khai.
|
Ưu điểm của trừu tượng
- Lợi ích chính của việc sử dụng một lớp trừu tượng là nó cho phép bạn nhóm một số lớp liên quan như anh chị em.
- Trừu tượng giúp giảm độ phức tạp của quá trình thiết kế và triển khai phần mềm.
Khi nào nên sử dụng Phương thức trừu tượng & Lớp trừu tượng?
Các phương thức trừu tượng hầu hết được khai báo trong đó hai hoặc nhiều lớp con cũng đang làm điều tương tự theo các cách khác nhau thông qua các triển khai khác nhau. Nó cũng mở rộng cùng một lớp Trừu tượng và cung cấp các triển khai khác nhau của các phương thức trừu tượng.
Các lớp trừu tượng giúp mô tả các loại hành vi chung và phân cấp lớp lập trình hướng đối tượng. Nó cũng mô tả các lớp con để cung cấp chi tiết thực hiện của lớp trừu tượng.
Tóm lược:
- Trừu tượng là quá trình chọn các bộ dữ liệu quan trọng cho một Đối tượng trong phần mềm của bạn và loại bỏ các dữ liệu không đáng kể.
- Khi bạn đã mô hình hóa đối tượng của mình bằng cách sử dụng Trừu tượng, cùng một bộ dữ liệu có thể được sử dụng trong các ứng dụng khác nhau.
- Java, sự trừu tượng hóa được thực hiện bằng cách sử dụng các lớp và giao diện Trừu tượng. Chúng tôi sẽ nghiên cứu chi tiết về các lớp và giao diện trừu tượng trong các hướng dẫn tiếp theo.
Đăng nhận xét