... th c , hành động
c ng tên c thể đư c th c hiện kh c nhau đối với ccđối
tượng/ cc lớp kh c nhau.
Chúng ta hãy xem xét ccđốitượngC a Sổ và C a C i. C hai đối
tượng c một hành động chung ... ho c changRpm().
Trong OOP thì cc thu c tính là trung tâm, là hạt nhân c a đối tượng.
C c phương th c bao quanh và che giấu đi hạt nhân c a đốitượng từ ccđối
tượng kh ctrong chương trình. Vi c ... leo
núi s
ẽ c n một phương th c đ c biệt để chuyển đổi bánh răng.
Chương 6: Lậptrìnhhướngđốitượng
85
Cc lớp con cung c p cc phiên bản đ c biệt c a cc lớp cha mà không
c n phải định...
... balance
};
21
TS. H.Q.Thắng, TS C. T Dũng Bộ môn CNPM 41
5. Bản chất c a đối tượng
Hoạt động c a đối tượng
Hoạt động c a đốitượng x c định c ch th c đối
tượng đáp ứng cc yêu c u từ ccđốitượng ... động c a hệ thống thu
đư c thông qua sự phối hợp c a cc đối
tượngtrong hệ thống. Cc mối quan hệ cung
c p cc đường dẫn để ccđốitượng tương
t c với nhau. C hai loại quan hệ giữa cc đối
tượng ... đối
tượng kh c.
Server: Một đốitượng không bao giờ hoạt động
trên cc
đối tượng kh c; nó chỉ c thể bị thao t c
b
ởi ccđốitượng kh c.
Agent: Là đốitượng vừa c thể hoạt động trên cc
đối tượng...
... toán tử cho vi c soạn thảo cc
biểu th c
Nội dung
Toán tử toán h c, quan hệ, luận lý, bit,
tăng/giảm, khởi tạo, điều kiện, lấy kích thư c
Độ ưu tiên c a cc toán tử
Chuyển kiểu
Chương ... Niệm C Bản
Khái Niệm C Bản
Một biểu th c là bất kỳ sự tính toán nào
mà cho ra một giá trị.
Một biểu th c ư c lượng một giá trị nào
đó.
2
Biểu Th c
Biểu Th c
M c tiêu
Giới thiệu cc ... 8
Độ Ưu Tiên C a Cc Toán Tử
Độ Ưu Tiên C a Cc Toán Tử
M c Toán tử Loại Thứ tự
Cao nhất
::
Một ngôi C hai
() [] -> .
Hai ngôi Trái tới phải
+
-
+ +
...
... 1:
(INTRODUCTION)
(INTRODUCTION)
2
Lịch Sử C a C+ +
Lịch Sử C a C+ +
C+ + dựa trên ngôn ngữ lậptrình C
C đư c phát minh trư c 1970 bởi Dennis
Ritchie
Ngôn ngữ c i đặt hệ thống cho hệ điều ... đư c chuyển đổi bằng c ch gán
một giá trị mới cho biến
Chương 1
3
Mở Đầu
Mở Đầu
M c tiêu
Giới thiệu cc khái niệm c bản c a một
chương trình C+ +
Nội dung
Viết và biên dịch chương ...
Biến
Biến
Biến
Tên tượng trưng cho một vùng nhớ mà dữ
liệu c thể đư c lưu trữ trên đó hay là đư c
sử dụng lại.
Thu c tính c a biến
Kiểu: đư c thiết lập khi cc biến đư c định
nghĩa
Giá trị: c thể...
... tạo m c định (default constructor)
- Hàm khởi tạo sao chép (copy constructor)
Khai báo:
<tên_lớp>(const <tên_lớp> &<tên_tham_số>)
Đối tượng mới sẽ là bản sao c a đốitượng ... in
Lớp cc hóa đơn
28/20
Bài tập (week 3)
•
Sử dụng TC++ để lập trình:
3. Xây dựng lớp vectơ gồm cc thành phần:
-DL: số phần tử, mảng cc phần tử
-Pt: nhập, in, tổng 2 vectơ, tích vô hướng
Hàm ... chồng cc toán tử c a cc bài tập trong tuần
3
23/20
3. Nạp chồng toán tử (tiếp)
Chú ý:
Chỉ c thể định nghia lại cc toán tử ở trên
Không làm thay đổi độ ưu tiên c a cc toán tử
Với toán...
... Thành phần tĩnh
a. Dữ liệu tĩnh
Khái niệm:
Là thành phần dữ liệuc a lớp nhưng không gắn
c thể với đốitượng nào
Dùng chung cho toàn bộ lớp
C cđốitượngc a lớp đều dùng chung thành
phần tĩnh ... c a đối tượng
C pháp:
friend <kiểu trả về> <tên hàm>(tham số);
Sau đó định nghĩa hàm ở ngoài lớp như cc hàm
tự do kh c
19/20
Qui c ch nộp bài
Gửi tới địa chỉ: sanghv@gmail.com
CC: ... Tin Kinh tế - H c Viện Tài
Chính
Tel: 0982.165.568
Email: sanghv@hvtc.edu.vn
Website: http://www.hvtc.edu.vn/sanghv
Lập trìnhhướngđốitượng
18/20
Bài tập (week 5)
•
Xây dựng cc toán tử nhập...
... xuất
Trong đó:
Kiểu dẫn xuất c thể là:
public
public: tất ccc tp public c a lớp cha sẽ là pubic
ở lớp con
private: tất ccc thành phần public c a lớp
cha sẽ là private ở lớp con
protected
private ... khởi tạo c a lớp cha không đư c kế thừa
- Mỗi đốitượngc a lớp con c thể coi là một đối
tượng c a lớp cha
Do đó: khi gọi hàm khởi tạo c a lớp con sẽ kéo
theo gọi hàm khởi tạo c a lớp cha
Thứ ... lớp cha Hàm khởi tạo lớp con
Ví dụ: hàm khởi tạo c a lớp A, B
12/23/13
12/23/13
04:12
04:12
Lập trìnhhướngđốitượng
Lập trìnhhướngđối tượng
Hà Văn Sang
Khoa HTTT,
Academy Of Finance,...
... sanghv@hvtc.edu.vn
Website: http://www.hvtc.edu.vn/sanghv
Lập trìnhhướngđốitượng
12/23/13
12/23/13
04:12
04:12
Lập trìnhhướngđốitượng
Lập trìnhhướngđối tượng
Hà Văn Sang
Khoa HTTT,
Academy ... ảo
Quá trình phát sinh một đốitượng lớp dẫn xuất:
B1: x c định cc thành phần ( ko ảo) kể cccc thành phần c a
lóp c sở
Bư c 2: Xây dựng con trỏ ảo và bảng áo
Khi kết gán muộn, c n c ... trỏ c a lớp c sở c thể chứa địa chỉ c a đốitượng lớp dẫn
xuất
Object Oriented Programing– Information Systems Department
9
Qui c ch nộp bài
Qui c ch nộp bài
Gửi tới địa chỉ: sanghv@gmail.com
CC:...
...
•
C c phương th c: nhập, in, c ng, trừ
-
Với mỗi kiểu dữ liệuc a mảng sẽ c 1 lớp
-
C c lớp này c chung cc thao t c
-
Chỉ kiểu dữ liệuc a mảng là kh c
C+ + cho phép xây dựng một mẫu c a ... hàm
12/23/13
12/23/13
04:13
04:13
Lập trìnhhướngđốitượng
Lập trìnhhướngđối tượng
Hà Văn Sang
Khoa HTTT,
Academy Of Finance, Hanoi
CHƯƠNG VI
Object Oriented Programing– Information Systems ... dụ:
template <class T> void MT<T>::nhap()
{
…
}
12/23/13
12/23/13
04:13
04:13
Lập trìnhhướngđốitượng
Lập trìnhhướngđối tượng
Hà Văn Sang
Khoa HTTT,
Academy Of Finance, Hanoi
Hà...
... dựa
trên cc thu c tính c a ccđốitượngtương ứng. Quá trình này đư c tiến hành như sau:
• Tập hợp tất ccc thu c tính c thể cc a ccđối tượng.
• Nhóm ccđốitượngccc thu c tính ... trìnhc u tr c phổ biến là Pascal, C và C+ +. Riêng C+ + ngoài vi c có đ c trưng
c a lậptrìnhc u tr c do kế thừa từ C, c n c đ c trưng c a lậptrìnhhướngđối tượng. Cho nên
C+ + c n đư c gọi ... cc kịch bản đư c mô tả trong bư c hai, chọn ra cc t c nhân c xuất hiện để đề
xuất thành ccđối tượng.
• Lựa chọn ccđốitượng bằng c ch loại bỏ cc t c nhân bên ngoài hệ thống, cc tác...
... niệm
8
NguyễnViệtHà
C c phương pháp lập trình
Lậptrình không cc u tr c
Lậptrìnhcc u tr c (lập trình thủ t c)
Lậptrình ch c năng
Lậptrình logic
Lậptrìnhhướngđối tượng
OOP: Khái niệm
7
NguyễnViệtHà
Để ... 3OBERON
C# 2000
Lậptrìnhhướng đối
tượng
Khái niệm
OOP: Khái niệm
22
NguyễnViệtHà
Hệ thống hướng đốitượng
Bao gồmmộttậpc c ốitượng
mỗi đốitượng chịu trách nhiệm một c ng vi c
Cc đốitượng ... c n đư c sửa đổi
OOP: Khái niệm
11
NguyễnViệtHà
Lập trìnhcc u tr c /lập trình thủ t c
(structured/procedural programming)
sử dụng cc lệnh cc u tr c: for, do
while, if then else
c c...
... n
…
…
**contacts
dirSize
maxSize
**contacts
dirSize
maxSize
*recent
*recent
Contact 1
Contact 2
Contact i
…
*contacts 1
*contacts 2
*contacts 3
*contacts i
*contacts n
…
…
Contact 1
Contact 2
Contact i
…
ContactDir
SmartDir
Khoa C ng Nghệ Thông Tin - Đại H c Cầ
n Thơ
13
Chuyển ... tả trong bộ nhớ
Ví dụ (tt) - mô tả trong bộ nhớ
Chương 9
*contacts 1
*contacts 2
*contacts 3
*contacts i
*contacts n
…
…
**contacts
dirSize
maxSize
**contacts
dirSize
maxSize
*recent
*recent
Contact ... Lookup(const char *name);
Contact **contacts; // ds cac doi tac
int dirSize; // kich thuoc thu muc hien tai
int maxSize; // kich thuoc thu muc toi da
public:
ContactDir (const int maxSize);
~ContactDir();
...
...
StringVec
StringVec {
public:
StringVec (const int dim);
~StringVec ();
char* operator [] (int);
int add(char* );
// ………
private:
char **elems; // cac phan tu
int dim; // kich thuoc cua vecto
int ... m c định c a ngôn ngữ:
Nếu đốitượng kích thư c nhỏ, c thể sẽ gây ra quá
nhiều khối nhỏ => chậm.
Không đáng kể khi đốitượngc kích thư c lớn.
=> Toán tử new và delete ít đư c ... 60;
cout<<m<<endl;
}
Chương 8
Khoa C ng Nghệ Thông Tin - Đại H c C
ần Thơ
4
Tái định nghĩa toán tử
Tái định nghĩa toán tử
Định nghĩa cc phép toán trên đối tượng.
C c phép toán c ...
... hạn
private Chỉ đư c sử dụng trong class khai báo nó
protected Chỉ đư c sử dụng trong class khai báo nó và cc
class dẫn xuất
internal Chỉ đư c sử dụng trongcc class c ng khối
assembly với class ... c a ngôn
ngữ lậptrìnhhướngđối tượng
C thể tạo kiểu dữ liệu mới trong C# bằng c ch định nghĩa lớp
(class). Mỗi thể hiện c a lớp đư c gọi là đốitượng (object)
Lớp là 1 kiểu dữ liệu chung ... th c get (ho c set) cho thu c tính thì thu c
tính đó sẽ là thu c tính chỉ đ c (ho c chỉ ghi)
Ngoài ra, C# c n cho phép sử dụng cc bổ từ trư ccc phương th c
get, set để giới hạn truy c p...