2. Nội dung
Chương trình Hướng đối tượng
Đối tượng là gì
Lớp là gì
Giao diện
2
3. Chương trình Hướng đối tượng
Chương trình là tập các đối tượng
Các ₫ối tượng có tính ₫ộc lập cao
Không thể tạo ra dữ liệu toàn cục của
chương trình.
3
5. Đối tượng
Là nguyên tử cấu thành ứng dụng.
Gồm 2 loại thành phần chính yếu :
ƒTập các tác vụ (operation): mỗi tác vụ
thực hiện 1 chức năng nào đó.
ƒTập các thuộc tính dữ liệu (attribute): mỗi
thuộc tính có kiểu dữ liệu và giá trị cụ
thể.
5
6. Đối tượng
Là một thực thể phần mềm bao bọc
các thuộc tính và phương thức liên
quan.
Một đối tượng cụ thể được gọi là một
thể hiện(instance).
6
7. Lớp
Lớp (class) là một thiết kế (blueprint)
hay một mẫu ban đầu (prototype) định
nghĩa các thuộc tính và các phương
thức chung cho tất cả các đối tượng
của cùng một loại nào đó.
Một đối tượng là một thể hiện cụ thể
của một lớp.
7
8. Thuộc tính
Trình bày trạng thái của đối tượng.
Các thuộc tính nắm giữ các giá trị dữ
liệu trong một đối tượng, chúng định
nghĩa một đối tượng đặc thù.
8
9. Phương thức
Thực thi các hoạt động của đối tượng.
Là nhân tố làm thay đổi các thuộc tính
của đối tượng.
9
10. Thông điệp
Là một lời yêu cầu một hoạt động
Được truyền khi một đối tượng gọi một
hay nhiều phương thức của đối tượng
khác để yêu cầu thông tin
Một thông điệp gồm có:
ƒĐối tượng nhận thông điệp
ƒTên của phương thức thực hiện
ƒCác tham số mà phương thức cần
10
11. Tính bao đóng (Encapsulation)
Che giấu chi tiết của đối tượng
Đảm bảo sự toàn vẹn của đối tượng
Chỉ có các phương thức nội tại của đối
tượng cho phép thay đổi trạng thái của
nó.
11
12. Tính thừa kế (Inheritance)
Các phương thức và thuộc tính được
định nghĩa trong một lớp có thể được
sử dụng lại bởi lớp khác.
Lớp cha – Lớp con:
Lớp cha (superclass) có phương thức,
thuộc tính được thừa hưởng bởi lớp khác.
Lớp con (subclass) là lớp thừa hưởng một
vài đặc tính chung của lớp cha và thêm
vào những đặc tính riêng khác.
12
13. Tính đa hình (Polymorphism)
Phương thức cùng tên có thể được
thực hiện khác nhau đối với các đối
tượng/lớp khác nhau.
13
14. Lớp trừu tượng (Abstract class)
Là một class cha cho tất cả các class
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
Quan hệ với class: A is a B.
A là class thừa kế (extend) của B.
B là một lớp trừu tượng
14
15. Interface (Giao diện)
Là một chức năng mà bạn có thể
thêm và bất kì class nào
Một chức năng bao gồm một hoặc
nhiều phương thức
Quan hệ với class: A can do b.
A là class hiện thực (implement) b.
b là một chức năng của A.
15
16. - Interface: Barkable, Runable, Flyable,
Swimable.
- Abstract class: Animal và các sub
class: Bolt, AngryBird và Nemo.
- Abstract class : Machine và các sub
class: McQueen, Siddeley.
16