Lp trnh hưng đi tưng trong Java !" #$%& "'() !"*+,"-".-/0 12 34"244%5#6712 34"6)1"006)8 /)9/1:400406"-"7 ;<=>;;?:@A5BC;==DEFGH;BDIF !"#$%&'("'')*+,,"- :J"-(KLM"NO**P/*%/: 0"QR'9*P/)0.-"QR'9*%/BSN%T O8(UV"WX""Y"+$"#"'Z[GL \+(])"#[-"U-"]:^R\_`)N +" #M"J"-" "a"/1P/6." "("b"!.N.c,0_%dbW e(bO")N"Y ! 0f\'(%a%a#%/*#%/"Ug"#*%/N: ("+%/L.,(\WP/ "N"-".+c0 h:Za""-"aV 9"-"8/"X) /"#/"./b"! hBS.P"N0i"-"%j%)X./"0b"'"#c0W"Y$ )%j +#)%j'"W)9 ./0#*1$%2+("*- #$P+#-"-"WLb"!80aS#-eK%d) $0_%d-(K.-(K"-"b"!$0aS#- $"N,0_%d-(K.8'"WX"" V#-(K =R"k0_%d"Xa", -"W,l.mS%&/'"WGL("# n !'"-"*"N`g"Y"+/b"!)"Z"X *+"N,8+`" V#-(K) 0'"W)-(K #M0 L.,)) K) ")"-" (! #M"-" Z)K%dL.,"N + !""K"b5o)"-"!"#lV +!""K)g"b)pgLq $0aS#- !.8'"S +!")"k8' 8/)#"-" :!"#%&"N"b"c(.r# ) !"N,0_%d.W(.N.c"WSQ#.4"lV +!" "K sa'"WS/b"!"N,-%d"#"-""-( K5*%/S"\_`.,"N,S#-"-" *tP("-"\_`9"-"/"-"e"-" "*"N#!Q"Vu!"N,"#"-"(a", ""-"(V"*S V#G'(*"v"Y ;;w=xBC;y<=z;:{=;==DEFGH;BDIF BW"+"-"L"N"-""""#n !,. "-"GNKNN).S)K ^ Lp trnh hưng đi tưng trong Java 3 44"$5(+206+"*- G'(""%&Z R".*%/"-"#-"V%/N1* P/6,W)!#V0a#)-/"0_%d.X.) +#/"#P/%/"/"(\WS#!P/ V# B#KNN,/8.-/1006@!'"Y) !#L+"##NUg%/"-""Y N1%/P/6)R"-"V"Y)%&""#"-""&#! BS0a'K"/)$SV"-"sN"-""!#4# .T"Y:J""N%/Ug"#N) 0S.X""YNe(.T"Y) ,/"Y@"WX"#")"|"WX"`t/ Ug#R )P/Rb"5b"Ug"#/" 0_%d%/#GL("Ng#!"Y"Ug8 b" -" Q" "Y M "N * "K " K 1z 46 1u4#6F+0_ !+!##%/$%&"*"NXW1u#6 B" !\'(%au#"-""KPVX)"L) "L"#)"YX)M$8(U"YXW)gXW"*+b #.""R)-(V"*)"Np(W-(".e u#() !"N,!#"NXW"d,d"d"#"-"d"K" .-" FN.m"Y)%&,'#!".V)#%/ &%j8+`),/KNN"Y .378/+$'"+('- BK.S.+c\'(%a"-"S"-"P"NBKNN"}-" K.S<NN0%/b")0f.SR "WX"%/"-"b""YN.S#N"N, p0"-"% /"-"b""YV NW8RNb%d"#.-/"'('"W1B#t#~6 <0_%d"'(')J+UgW"+"-"%/b""Y "-"v0_%d0a.S)J"k"*UgVQ" "Y V d : •4"N,\4"-"\454#)u€:)t4"-""Y \4-"\4L"N,-)%S!BS\49V)"N,\'(%a"-"\4!)\4 •4"NV-("N,a.9q 93 +$*6:,*"2,- <".SS"-"pVN"N,(p"-"b"/""Y pV#0b"#N1V).,+L)%0-""Y b"T(V6GL(R"M(Vb") ""N,"N"-".-"&("#"YR b"GNK V d :b""!()\4)\4-("N,c)"|\4!+!q BK"|,/9/"#%/"N,0_%d"#"-"#!"Y p8-)("|R[#%/)Lb"]Ng"N,. #%/p8-"#N"-"V8GL(+,0ab"! • "-""#n#%/"N,0_%d"#"-"#!"Yp8-B V %U"0f\-"U#!"d,#0f"&(4#L./u!"k"*"-" #%/"Yp8-0_%dN O Lp trnh hưng đi tưng trong Java sa.Xl)NN.S!#V$ "N.+c-,WL0#$.J: "'('"W.L"c +"#/"0_%d!#!P/ !P "0b"L"#/"-,.,BKNN"#n !0_%d"-" /"X.-‚"WX""-"#!P/P +#/ 9 #%/"Y"-"sa"#n !!##!P/R)%jR")%j ,"NKpU V"N*(Y"-"KcV) /"""W.-*(Y"#$, l*%a- ƒ Đi tưng v lp, mng ;<=> ;•„…t†F@E5 <Ug) !"k"KN"b",/ • 1:4 4e 46",/ 91:4#%6 -" Ug V#R"-" V1:4 4e 406 :P/"b#"-"b"1:4#%6-"b" Ug# R"*"YB#*"-")"-" ,/"(" 9"-" b"Ug#Ne()"K"-"b"8(U%/"Y "N,%&#@Ug.,%/)%&,!#"-"" .,N t!*(Y"YUg0 ?0%6"(@ @"(\W""#"-"5".4 .-")Q"U"k"N"-"#!P# "&N"N8(L(\WN ?+%2+(@ @S).,.9!# ?A"+6@ @•."N"#)..S (6+22 BV ?'B')2@ <S"s400 ?",6','2@ F#%/""Q 900 CDD=',%'+"+%6'2E'(6++"*2 < -#"-" DD='*)2E'(6++"*2 < -#"-"b" F V d :B!#u#\+ ~%)4)%4 ‡ˆGUg ˆ‡ "00u#\‰ %# 4~%Š %# 44Š %# 4%4Š ‹ ;;BŒ2GH;BDIF G+"%1* !"# G,"N""-""Y+8#! V d :u#\(u#\ < -# (u#\"N.,u#\< -#(a"."W-.`b"Y "b"u#\)"k!#8("Zu#\s"'/() 8("(u#\\W/V.`b""b-U"k•N"Z a"# <-""'/. -# .,0"W%"JV.`b"Y"b U".,N V d : Š s"'/() (V sN),a"0a!#-U"k"Y"# • Đi tưng v lp, mng ()%&#-_4~ H'I V d :(u#\Ž4~u#\16Š N,."+ "V#"'/ 'I V d : u#\(u#\Ž4~u#\16Š u#\(u#\OŽ(u#\Š (u#\O""&(u#\" .J1(0:B0KLM(N+6 u. -##UgM"N#! hu1;0"4e 4(2 34"e 46"k"K).(\W +.9!# •-". -# •-"(" hu100e 46L +"W #"d") g"!#*"& )%&""#R").(\W."*.9!#), #p"Y"-""& •-". -# 2+"( •-"(" =. -##UgM"N#! h=12 34":4#%6"-"(\W $ !"#- h=100:4#%6$*"Y"k(\W#0a V.""YNB(V)"N,!#*"N, %&")."*""d,)"N,"( \W". W.r#"YN"!#) •"-"Q". -#"YN S.#-0"-"(\W $ !"#- -"#-R""Y:#5".4@V.R."*+ .9!# V d : %# 4Ž:081••ƒO‘6Š V d 1: "00uB#‰ 0"Š ‡‡u s0Š ‡‡u uB#1s006‰ ‡‡=.9!# 0Ž00Š ••Š • (u#\ (u#\O ~% 4 %4 u#\2 34" Đi tưng v lp, mng ‹ #%"#416‰ s(04#106Š ‹ ‹ "00ot‰ "0"#%1s0’“6‰ uB#^Ž4~uB#1["#(4#4]6Š uB#OŽ4~uB#1[u44###]6Š ^"#416Š O"#416Š s(04#1[s#"#[•uB#6Š ‹ ‹ <!#^)O 9#-_4~)%auB#16"R)cV^ V d 2: "00uB#O‰ 0"Š s0Š uB#O1s006‰ ‡‡=.9!# 0Ž00Š ••Š ‹ 0" 416‰ ‡‡= 4Š ‹ s"#416‰ ‡‡= 40Š ‹ ‹ "00otO‰ "0"#%1s0’“6‰ s(04#1[u#"#[•uB#O 416•["]6Š uB#O^Ž4~uB#O1["#(4#4]6Š uB#OOŽ4~uB#O1[u44###]6Š s(04#1[u#"#[•uB#O 416•["]6Š s(04#1[#”[•^"#416#o40416•]”"#]• ^"#416416•].(]6Š s(04#1[B”](4”[ %0.([• O"#416%4\2•1[(4]6•]#"”]• O"#416#o404166Š ‹ ‹ FRuB#O 416X""R%auB#O,.9!#0f"#U – ^"#416+Ls ;;;F;E;B=;?oe—5=DwFB= ˜ G+"%1*OP($L,- t!p8-"Yb"0 ™ Đi tưng v lp, mng ?@ "Q07"R0:B0K ?2+"(@ L,6 ?+%2+(@ L,/0# ?A"+6@ L,S ?@$ !"#-*I2$#C DDT*):*A,'*) F hB(4<,%/%#+L)"N,., W.r).,"+"-".,%# !!# .+L-U#).,+L"YN+#% h-""N.,+L.+#%0f+L-U"#"RN%& %!"'/40 4 ,b"Š F-U"Y ,b""K+L"# hBW"+ !(L"980•#%W16(0 V."N0T+"N16 544h@0t0-"'"-" 9"-"%Wš()J+". -#.,)"N,., W.r)"N%!Type Parameter1)Type Parameter2 .U,V"0:B0KLM(N+6 -"L.,(\W"Y ")4#4"4%#4"4%"k-%d ."NV8.S0f\n0 < p0L"#*"Y1 6 hBS.#- ""k•*("N,"(\W 9 W.r%|/ #%&9#(#N. -# h4"k"N,"(\W#"YN)R#!P•#).,"+ "#L."N8(L(\W h<."NL.,(\W#"%&)Q"V ""k#N"Y N).,(\WS V#N"YN 9OP(,+"$- <"!(b%d") !"kV00"!()R16" V#00N)b"0fL.,"!("-"b".-" t!p8-"Yb"16 0%6"(2+"(V*"),+"$W"+2?@-C DDT*):*A='*) F h:""k"*"Nb"16Rb%d"5( 00 hBS.#-0""#n16"R.."*.9!#e16 "%U""YR". W.r#".9!# hBS.#-#%"# 16.+L-U hBS.#- ""k•("R 9%|/ V#." .9 hBs0’“. -#0V0"s)"b"J.`aB ("-"%|/%&." V d 1 : "00et‰ "0"#%1s0’“6‰ › Đi tưng v lp, mng •#1Ž–Šœ04Š••6‰ s(04#1[B%#[••][•0’“6Š ‹ ‹ ‹ <"!(" ”•3etB%#%#4↵ B%#–B B%#^ •3etB[%#][%#4]↵ B%#–B B%#^%# B%#O%#4 V d 2 : "00etOŠ "0"#%1s0’“6‰ 0Ž–Š •#Ž–Š •#1Ž–Šœ04Š••6‰ 0•Ž;4404;10’“6Š ‹ s(04#1[B#Ž]•06Š s(04#1[B Ž]•1•#60‡046Š ‹ ‹ <"!(" ”•3etO^Oƒ↵ B#Ž™ B ŽO XL,7Y"U*$J*20(*- N#-""*a"/J.**V"!#.9!#- U"#"-" -""/"("N,a •"-"%&.9!# =.9!#"N"&VN"L)"k"aR 9#-_4~ .""!#=.9!#."N-U+L).Ug"N ,#%(. V d :h.K""".9!#a."!# "00u#\‰ %# 4~%Š %# 44Š %# 4%4Š %# 4#416‰ 4~%ˆ4ˆ%4Š ‹ u#\1%# 4~)%# 4)%# 4%6‰ ~%Ž~Š 4ŽŠ %4Ž%Š ‹ ‹ ‘ Đi tưng v lp, mng "00u#\t4#‰ "0"#%1s0’“6‰ u#\(u#\^Ž4~u#\1^–)O–)^•6Š u#\(u#\OŽ4~u#\1ƒ)™)ž6Š %# 4#Š #Ž(u#\^#416Š s(04#1[B,K"[•#6Š #Ž(u#\O#416Š s(04#1[B,K"[•#6Š ‹ ‹ h< !.Ug$.9!#"#)0f!#.9 !#Q"V"#Ne("-"""NT/" $=.9 !#Q"V."N%0-")a.9!#W"+"-" "YLU J4#"-"8("Q"U"Y)U–"#.,0).`aŸ”– "#.,.`a")U •04"#., ##4)U"#"-" h=.9!#"}"N,"!"M $¡10fNv9*06g "nUgL.9!#.-"9%0-"(., ZL,N: -""W- •#-_4~)..M!"# )N\4."|"* "#N"N,"a+ N 9 #-"1 4"#4"#6B#-"#!#(#! 1B4%6"""Y !u!.+ '"/"( s( !0f,v(#!# B(V)"}"#nY()"N,"}"*"#$ #N=Y(#"k"R 9#-")%#( !.N#-" #X"#Y(0f"R t!Y(0 *'(')V*")A"+6"['$-C DDT*):*A='*) F \/7*1"2 "Ug#')N "d" "kM!." R "d" ("QV& #Q" )N0f"4 .W ( #' V d : "00et‰ 40Ž^–Š ‡‡u #%B4016‰ 40ŽO–Š ‡‡u"d" s(04#1[40Ž[•406Š ‡‡; "d" ‹ "0"#%1s0’“6‰ etŽ4~et16Š B4016Š ‹ ‹ BS.#-0"N,%& V# W"bb"#," ž Đi tưng v lp, mng /). &V "d" V d :B(%|/V s(04#1[40Ž[•0406Š ‡‡; "d" )0"k ]U(^L,$V'6*+)')='*)2- B#"&)"#n !UgL&VL./"-" (+"N%0-".-")g.-"L0#Q"., "Y"-"<+c(R0a!"M"k' /( .-"%a#0.,"Y"-") W"WV.,"Y.8++ L V d : ‡‡:(C4"3 #3~5#Š "00:(C4"‰ \^Ž–Š (^Ž–Š \OŽ–Š (OŽ–Š :(C4" %C4"1\^)(^)\O)(O6‰ 0\^Ž\^Š 0(^Ž(^Š 0\OŽ\OŠ 0(OŽ(OŠ 40Š ‹ :(C4" %C4"15##@4•)5# ##C6‰ \^Ž#@4•\Š (^Ž#@4•(Š \OŽ ##C\Š (OŽ ##C(Š 40Š ‹ :(C4" %C4"15##@4•)~)6‰ \^Ž#@4•\Š (^Ž#@4•(Š \OŽ\^•~Š (OŽ(^•Š 40Š ‹ #%%0(16‰ s(04#1[t##:(C4"œ]•\^•[)[•(^6Š s(04#1[)[•\O•])[•(O•]•]6Š ‹ ‹ B)#N~"N0iC4"4"(V%&, ,%j"@ :(C4""Y"k%&,#!"#.-/!"MB#:(C4""N X !!#:(C4"("#".-" h#"#!N"V-\^)(^#!N"%+\O)(O h#"N"V-N"%+"Y"%%!5# h#"#!N"V-"Y"%!5#"&"L)"L ^– [...]... lai nam sinh trong khoang 1970 den 2100"); } } } } Bạn hãy xem thêm java. lang.Byte, java. lang.Short, java. lang.Integer, java. lang.Double, java. lang.Float để có được định nghĩa đầy đủ các phương thức và biến cài đặt cho các lớp này 30 Mục lục MỤC LỤC Chương : LẬP TRINH HƯỚNG ĐỐI TƯỢNG TRONG JAVA I KHÁI NIỆM LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 1 Lập trình hướng đối tượng ... kiểu phức hợp Java chỉ cho phép chuyển đổi đối tượng thuộc lớp con cháu thành đối tượng của lớp cha ông (Ancestors), và không cho chuyển ngược lại Giả sử bạn có đối tượng thuộc lớp con Child và cần chuyển đổi thành đối tượng thuộc lớp cha ông Parent Java cho phép dùng đối tượng Child một cách tự nhiên ở bất cứ chỗ nào dành cho đối tượng Parent, ta... Đối tượng Child có đầy đủ thuộc tính và hành vi của đối tượng Parent nên có thể “vào vai” đối tượng Parent Nếu muốn, bạn cũng có thể chuyển đổi đối tượng thuộc lớp con cháu thành đối tượng thuộc lớp cha ông một cách tường minh, nhưng không cần thiết : Child c = new Child(); Parent p = (Parent) c; 2 Chuyển đổi kiểu sơ cấp thành kiểu phức hợp Trong gói java. lang... extends trong một khai báo lớp, lớp của bạn cũng có một lớp cha Điều này dẫn đến một câu hỏi là các lớp bắt đầu từ đâu ? Như mô tả trong hình sau, lớp cao nhất, lớp mà từ đó tất cả các lớp xuất phát từ, là lớp Object định nghĩa trong java. lang Lớp Object định nghĩa và cài đặt các hành vi mà mọi lớp trong Java cần đến II LỚP STRING VÀ STRINGBUFFER Trong. .. lắp trong lớp con gọi là phương thức trừu tượng, được khai báo abstract và không có phần thân phương thức abstract [Type] MethodName(Parameter-List) ; Bất kỳ lớp nào chứa một hay nhiều phương thức trừu tượng cũng phải khai báo trừu tượng, sử dụng từ khoá abstract trước từ khoá class Không thể khởi tạo đối tượng kiểu lớp trừu 13 Đối tượng và lớp, mảng tượng, ... Tạo một đối tượng Nhiều String được tạo từ các hằng chuỗi Khi trình dịch bắt gặp một chuỗi ký tự bao giữa cặp nháy kép, nó tạo ra một đối tượng chuỗi mà có giá trị là chuỗi bao giữa cặp nháy kép Bạn có thể dùng hằng String ở bất kỳ đâu bạn dùng đối tượng String Bạn có thể tạo đối tượng chuỗi như bất kỳ đối tượng nào khác của java, dùng... compareTo(floatObj/floatVar f ) : so sánh giá trị của đối tượng số với đối tượng hay biến số f, trả về giá trị : nếu = 0 : bằng nhau nếu = số âm : giá trị của đối tượng nhỏ hơn f nếu = số dương : giá trị của đối tượng lớn hơn f - boolean equals(floatObj f ) : nếu = true nghĩa là giá trị của đối tượng bằng f - string toString() : chuyển một đối tượng thành String Tất cả các lớp... nghĩa lớp nào import PackageName1[.PackageName2].ClassName; import PackageName1[.PackageName2].*; Ví dụ : import java. util.Date; import java. io.*; Tất cả các lớp chuẩn của Java lưu trong gói tên là java Bạn phải nhập từng gói hay lớp bạn muốn sử dụng, riêng lớp gói java. lang lưu nhiều chức năng thông dụng, được import ngầm định bởi bộ biên dịch cho tất cả các chương... ĐỐI TƯỢNG 1 Lập trình hướng đối tượng 2 Trừu tượng hoá II CƠ CHẾ TRIỂN KHAI MÔ HÌNH HƯỚNG ĐỐI TƯỢNG 1 Tính đóng gói 2 Tính kế thừa 3 Tính đa hình Chương: ĐỐI TƯỢNG VÀ LỚP, MẢNG I XÂY DỰNG LỚP II TẠO ĐỐI TƯỢNG 1 Khai báo đối tượng 2 Cách truy xuất thành phần của lớp ... có thể là phương thức hay biến của đối tượng Ví dụ : Viết lại hàm display() trong class MyPoint2, có gọi hàm kế thừa từ lớp cha : void display() { super.display(); System.out.print(”, z = “+z+” “+”name :”+name+”\n”); } V LỚP, PHƯƠNG THƯC TRƯU TƯỢNG Trong trường hợp chúng ta muốn định nghĩa một lớp cha theo một cấu trúc trừu tượng cho trước mà không cần hiện thực . Lp trnh hưng đi tưng trong Java . !,. "-"GNKNN).S)K ^ Lp trnh hưng đi tưng trong Java 3 44"$5(+206+"*- G'(""%&Z. V %U"0f-"U#!"d,#0f"&(4#L./u!"k"*"-" #%/"Yp8-0_%dN O Lp trnh hưng đi tưng trong Java sa.Xl)NN.S!#V$ "N.+c-,WL0#$.J: "'('"W.L"c