Lập trình hướng đối tượng: Tìm hiểu mô hình trừu tượng
Lập trình hướng đối tượng: Tìm hiểu mô hình trừu tượng Sau loạt bài về kiến thức cơ bản như tìm hiểu khái niệm, phương thức magic, sự kế thừa, các uy tắc chung. Trong bài này, chúng ta sẽ tiếp tục mở rộng các kiến thức trong lập trình hướng đối tượng . Cụ thể, chúng ta sẽ ...
Lập trình hướng đối tượng: Tìm hiểu mô hình trừu tượng
Sau loạt bài về kiến thức cơ bản như tìm hiểu khái niệm, phương thức magic, sự kế thừa, các uy tắc chung. Trong bài này, chúng ta sẽ tiếp tục mở rộng các kiến thức trong lập trình hướng đối tượng. Cụ thể, chúng ta sẽ cùng phân tích và tím hiểu về mô hình trừu tượng trong hướng đối tượng.
Lúc này có thể hiểu rằng, lớp ABC được gọi là lớp trừu tượng và phương thức test() được gọi là phương thức trừu tượng.
Khi đó, một lớp muốn sử dụng lớp trừu tượng, ta sẽ có cú pháp extends để kế thừa.
Sự trừu tượng có thể được hiểu đơn giản như sau:
Giả sử, kiến trúc để xây dựng 1 chiếc xe sẽ bao gồm: Bánh xe, yên xe, thắng.
Như vậy, những mô hình xe máy, xe đạp, xe hơi cũng được gọi là xe khi chúng thỏa mãn những yếu tố mà kiến trúc một chiếc xe quy định.
Một khái niệm nữa được đưa vào mô hình hướng đối tượng là Giao diện. Giao diện cũng mang nguyên tắc của mô hình trừu tượng. Nhưng điểm khác biệt ở đây là với giao diện, chúng ta có thể cho phép một lớp sử dụng linh động giữa một hoặc nhiều giao diện cùng lúc.
Có thể hiểu một cách đơn giản rằng, giao diện đem lại sự tùy chọn đầy đủ hơn. Nó cho phép, một lớp có thể dùng một hoặc nhiều giao diện cùng lúc. Và khi đã sử dụng, thì lớp đó phải định nghĩa các phương thức thuộc giao diện đó giống với ví dụ ở trên là lớp ABC đã phải định nghĩa 2 phương thức là sound() và protect().
Không giống như lớp trừu tượng, giao diện chỉ có thể chứa tên các phương thức. Ngoài ra nó không thể định nghĩa các phương thức hoặc chứa các thuộc tính bình thường như một lớp trừu tượng được.
Và dĩ nhiên một lớp vẫn có thể vừa kế thừa và vừa sử dụng giao diện được. Ví dụ sau sẽ thể hiện điều đó:
(
Nguồn Qhonline