Tu n 4: XÂY D NG L P, PH NG TH C KH I T O (tt)
-
-N i dung
1 N m v ng c u trúc c a m t l p g m 2 thành ph n:
• Thu c tính (thành ph n d li u) (property)
o Cú pháp khai báo: private ki u_d _li u Tên_thu c tính;
• Hành vi (behavior, method)
o Cú pháp: public ki u_d _li u_tr _v Tên_hàm(các tham s đ u vào) { }
2 Ph m vi truy xu t thành ph n c a l p
• Public: dùng chung t i m i v trí
• Private: ch đ c truy xu t trong ph m vi l p đó
3 Cách vi t và g i th c hi n các lo i ph ng th c kh i t o (Constructor)
Cú pháp: public Tên_l p(các tham s đ u vào) {…}
a PTKT không tham s
b PTKT có tham s
c PTKT có tham s , d ng sao chép
L u ý: Tên ph ng th c kh i t o ph i trùng v i tên l p
4 T o đ i t ng, truy n thông đi p cho đ i t ng (g i th c thi m t ph ng th c)
Cú pháp: tên_bi n_ đ i_t ng.tên_ph ng_th c(các_ đ i_s _n u_có);
Bài t p c b n
Bài 1:
Vi t ch ng trình khai báo 1 l p có tên HCN (Hình Ch Nh t) L p này có 2 thành ph n d li u là
chi u dài và chi u r ng hình ch nh t
• Vi t 3 ph ng th c kh i t o (constructor) t ng minh cho l p này:
- Ph ng th c kh i t o không tham s , m c đ nh chi u dài và chi u r ng c a hình
ch nh t b ng 1
- Ph ng th c kh i t o v i 1 tham s ki u int, khi đó chi u dài và chi u r ng đ c
kh i t o v i giá tr tham s đ a vào (hình vuông)
- Ph ng th c kh i t o v i 2 tham s ki u int, t ng ng là chi u dài và chi u r ng
c a hình ch nh t
• Vi t ph ng th c tính chu vi và di n tích c a hình ch nh t
Trang 2• Vi t l p th nghi m (DEMO class) cho l p HCN v a t o (trong l p này ch a ph ng
th c main) đ mô t m t vài đ i t ng đ c t o t l p HCN Cho bi t di n tích và chu vi
c a m i đ i t ng
Bài 1: Sau khi làm các bài th c hành tu n 1, 2, 3, bài này các b n t code!
1 Xây d ng l p HCN, xác đ nh xem l p có nh ng thu c tính (properties) và ph ng th c
(method, behavior) nào?
2 Xây d ng l p th nghi m (DEMO class) cho l p HCN v a t o
M r ng
T ng t , làm các bài sau:
Bài 2: Xây d ng l p DIEM l u t a đ c a đi m trong không gian hai chi u
• Thành ph n d li u: hoành đ x và tung đ y
• Các ph ng th c g m:
– Ph ng th c kh i t o chu n: x = 0, y = 0
– Ph ng th c kh i t o 2 tham s
– Ph ng th c kh i t o sao chép (tham s là m t DIEM)
– Ph ng th c tính t ng các thành ph n x và y c a 2 đi m
Trang 3– Ph ng th c tìm đi m đ i x ng c a m t đi m
– Ph ng th c in t a đ c a m t đi m
Bài 4: Xây d ng l p Tam giác g m các Thành ph n d li u: dài c nh th nh t, đ dài c nh th
hai, đ dài c nh th ba c a tam giác
• Vi t Ph ng th c kh i t o (constructor) v i 3 tham s ki u int t ng ng là 3 c nh c a
tam giác
• Vi t các ph ng th c c a đ i t ng tam giác: Tính chu vi tam giác, tính di n tích tam
giác và xác đ nh lo i tam giác
• Vi t l p th nghi m (driver class) cho l p tam giác v a t o (trong l p này ch a ph ng
th c main) đ mô t m t vài đ i t ng đ c t o t l p tam giác Cho bi t di n tích và
chu vi c a m i tam giác, đ ng th i cho bi t lo i tam giác
Bài 5: T o l p PhuongTrinhBacNhat có 2 bi n a và b là 2 s nguyên
• nh ngh a các ph ng th c setters/getters cho các bi n
• T o 2 Ph ng th c constructors cho đ i t ng:
o constructor default: là constructor không có tham s , dùng đ kh i
gán các giá tr b ng 0 cho các bi n c a đ i t ng
o constructor copy: constructor có đ y đ tham s (s tham s c a
constructor này b ng v i s data instance ta đã khai báo) Constructor này th ng dùng đ kh i
t o 1 đ i t ng đ y đ
• nh ngh a ph ng th c đ c t d ng chu i c a đ i t ng (ph ng th c
toString)
• Vi t m t ph ng th c giaiPT dùng đ gi i ph ng trình b c nh t ax+b = 0
• Vi t l p cho ph n th nghi m (Driver Class) c a l p PhuongTrinhBacNhat
v a t o
• UML class diagram: