You are on page 1of 2

Tổng quan về OOP (Object Oriented Programming )

1. Lập trình hướng đối tượng


- Là một phương pháp lập trình dựa trên khái niệm về lớp và đối tượng. Lập trình
hướng đối tượng sử dụng tất cả tính năng của lập trình thủ tục. Tuy nhiên, OOP
làm việc dựa trên phân tích đối tượng, thuộc tính và hành vi của đối tượng đó.
+ Đối tượng sẽ được thực thi sau khi nhận được thông điệp.
+ Cùng một thông báo hoạt động khác nhau (và phù hợp) khi được áp dụng
cho các đối tượng khác nhau.
+ Một phương thức có thể hoạt động phù hợp với các loại dữ liệu khác nhau
mà nó nhận được mà không cần tên phương thức riêng.
+ Giảm thời gian tạo đối tượng mới do có tính kế thừa
+ Ẩn thông tin (private) -> hoàn thiện hơn lập trình thủ tục
- OOP bao gồm:
+ Lớp (class)
Vd: Person, animal, transport, smartphone, student,...
+ Object ( đối tượng)
Vd: lớp smartphone có các đối tượng như Samsung, Iphone, Oppo,..
+ Kế thừa (inheritance):
Vd: Lớp Person có các thuộc tính Name, Birth Day, Age. Lớp student được
tạo ra kế thừa các thuộc tính của lớp Person
+ Đa hình (Polymorphism)
Vd: trong lớp hình học, khi phương thức vẽ được gọi thì hình tròn và hình
vuông thực hiện khác nhau.
2. Lớp và đối tượng (class & object)
- Lớp (class): là một tập hợp các objects cùng loại. Là một kiểu dữ liệu, 1 khuôn
mẫu giúp mô hình hóa các đối tượng thực tế. Class sẽ có các thuộc tính và các
phương thức tương ứng với thuộc tính và hành động thực tế bên ngoài.
- Đối tượng (object): một đối tượng có thể là bất cứ thứ gì. Một đối tượng sẽ được
xem là một thực thể của lớp. Đối tượng bao gồm 2 thông tin:
+ Thuộc tính (attribute): thông tin, đặc điểm của đối tượng.
+ Phương thức (method/ behavior): là những hành vi mà đối tượng thực hiện
Vd1: Ta có lớp Sinh_vien chứa các đối tượng sinh viên 1, sinh viên 2,.... Mỗi sinh
viên có các thuộc tính như : tên, tuổi, MSSV, ngày sinh, lớp,.... Và các hành vi như:
tra cứu điểm, đăng ký học phần, xem TKB,...
3. Kế thừa (Inheritance)
- Tính kế thừa cho phép bạn tạo ra các lớp mới mở rộng hoặc là các lớp con của
các lớp đã tồn tại. Các lớp con có thể kế thừa tất cả các thuộc tính của lớp gốc (lớp
cha), hoặc có thể ghi đè lên các thuộc tính không phù hợp.
Vd2: Ta có lớp Animal là lớp cha với các thuộc tính name, gender, lớp Dog và lớp
Cat là các lớp con. Cả hai lớp con kế thừa thuộc tính name, gender từ lớp cha và
mở rộng phương thức speak để cung cấp triển khai cụ thể cho mỗi loại động vật.
4. Đa Hình (Polymorphism)
- Tính đa hình trong lập trình OOP cho phép các đối tượng/lớp khác nhau thực thi
chức năng giống nhau theo những cách khác nhau.
Vd3:Từ Vd2, khi chúng ta tạo các đối tượng từ các lớp Dog, Cat và gọi phương
thức speak, chúng ta nhận được các kết quả phù hợp với loại động vật tương ứng.
Dog sẽ kêu “woof woof” còn Cat sẽ kêu “meow moew”.

You might also like