Slide 1/
Ch ng 02ươ
CÁC KHÁI NI M C B N V L P Ệ Ơ Ả Ề Ậ
TRÌNH H NG Đ I T NGƯỚ Ố ƯỢ
Basic Concepts in OOP
Slide 2/
M c tiêuụ
•
N m v ng m t s đ nh nghĩa trong OOP ắ ữ ộ ố ị
bao g m:ồ
–
Tr u t ng hóa d li u.ừ ượ ữ ệ
–
L p, đ i t ng, th hi n.ớ ố ượ ể ệ
–
Thông đi p và g i thông đi p.ệ ử ệ
–
Tính bao đóng.
–
Tính k th a.ế ừ
–
Tính đa hình
Slide 3/
N i dungộ
•
Ki u d li u tr u t ng (abstract data type)ể ữ ệ ừ ượ
•
L p-th hi n- bi n đ i t ngớ ể ệ ế ố ượ
•
Thông đi p (message)ệ
•
ngôn ng t nhiênữ ự
attributes
int, NGUOI, PERSON
là các ADT
Slide 5/
2.2- L p, Th hi n, Bi n đ i t ngớ ể ệ ế ố ượ
•
POP: ADT d ng struct + các ạ
functions
•
OOP : class = <ADT +
Functions>
•
class: Hi n th c c a m t t p ệ ự ủ ộ ậ
các đ i t ng (object) cùng ố ượ
lo i ạ Cùng mô t , cùng hành ả
vi.
•
Th hi n – instanceể ệ : M t thông ộ
tin v m t đ i t ng có trong ề ộ ố ượ
b nh c a ch ng trình.ộ ớ ủ ươ
•
Bi n đ i t ngế ố ượ (g i t t là đ i ọ ắ ố
t ng): Tham chi u đ n m t ượ ế ế ộ
th c th c a l pự ể ủ ớ .
300
1000
“Hello”
S 1000
String S=“Hello”;
Tên
NămSinh
TênNg iYêuườ
TiêuHóa()
Nu t()ố
Đi()
Đ ng()ứ
Ch y()ạ
Nh y()ẩ
getTen()
getNamSinh()
getTenNguoiYeu()
Slide 8/
Bao đóng
class CIRLCE
int x, y, r;
int BorderColor;
int BkColor;
public int getX()
public void setX(int xx)
public int getY()
public void setY(int yy)
public int getR()
public void setR(int r)
public double getPerimeter()
public double getArea()
V i khai báo này, ớ
bên ngoài có th ể
•
Th a k đ nừ ế ơ (single inheritance): M t l p ch có ộ ớ ỉ
th có t i đa ể ố m t l p cha.ộ ớ
•
Th a k b iừ ế ộ (đa th a k , multi-inheritance): M t ừ ế ộ
l p ch có th có nhi u ớ ỉ ể ề l p cha.ớ
•
M i ngôn ng h tr kh năng th a k khác ỗ ữ ỗ ợ ả ừ ế
nhau: C++: đa th a k , Java, C#: đ n th a k .ừ ế ơ ừ ế
Slide 12/
Th a k ừ ế
ID_Num
Name
YearOfBirth
Address
getID_Num()
setID_Num(newID)
class PERSON
RollNum
Score
getScore()
setSore(newScore)
class STUDENT
quan h ệ
“là 1”
Ch ph i ỉ ả
hi n th cệ ự
b ng nàyằ
l p cha.ớ
(4) Ph n còn l i sau khi tách ầ ạ
t p giao là các l p conậ ớ .
Slide 14/
Th a k - Bài t p làm t i chừ ế ậ ạ ỗ
Phân tích phân c p th a k cho các l p:ấ ừ ế ớ
•
Hàng đi n máy <mã hàng, tên hàng, nhà ệ
s n xu t, giá, th i gian b o hành, đi n áp, ả ấ ờ ả ệ
công su t>ấ
•
Hàng sành s < mã hàng, tên hàng, nhà ứ
s n xu t, giá, lo i nguyên li u>ả ấ ạ ệ
•
Hàng th c ph m <mã hàng, tên hàng, nhà ự ẩ
s n xu t, giá, ngày s n xu t, ngày h t ả ấ ả ấ ế
h n dùng>ạ
Slide 15/
Th a k - Bài t p v nhàừ ế ậ ề
Phân tích phân c p th a k cho các đ i t ng ấ ừ ế ố ượ
trong m t h c vi n:ộ ọ ệ
•
Nhân viên qu n lý <mã nv, tên nv, năm sinh, trình ả
đ , tr ng đào t o, chuyên môn, l ng cb, ph ộ ườ ạ ươ ụ
c p ch c v >ấ ứ ụ
•
Nhân viên nghiên c u <mã nv, tên nv, năm sinh, ứ
trình đ , tr ng đào t o, chuyên môn, l ng cb, ộ ườ ạ ươ
ph c p đ c h i>ụ ấ ộ ạ
•