nh r ng đó là m t
ớ ằ
ộ String, song tôi cũng có th đ t b t kì tên bi n h p l nào cho nó.
ể ặ ấ
ế
ợ ệ
public static void
printTwice(String s) {
System.out.println(s);
System.out.println(s);
}
Khi kích ho t
ạ printTwice, ta ph i cung c p m t đ i s duy nh t có ki u
ả
ấ
ộ ố ố
ấ
ể String.
printTwice(
"Don't make me say this twice!"
);
Khi b n kích ho t m t ph
ng th c, đ i s mà b n cung c p đ
c dùng đ gán cho các tham s . Trong
ạ
ạ
ộ
ươ
ứ
ố ố
ạ
ấ
ượ
ể
ố
tr
ng h p này, đ i s
ườ
ợ
ố ố "Don’t make me say this twice!" đ c gán cho tham s
ượ
ố s. Quá trình này đ c g i
ượ ọ
là truy n tham s
ề
ố vì giá tr đ c truy n t bên ngoài ph ng th c vào bên trong.
ị ượ
ề ừ
ươ
ứ
M t đ i s có th là bi u th c b t kì, vì v y n u b n có m t bi n
ộ ố ố
ể
ể
ứ ấ
ậ
ế
ạ
ộ
ế String thì có th dùng chính bi n này
ể
ế
làm đ i s :
ố ố
String argument =
"Never say never."
;
printTwice(argument);
Giá tr mà b n cung c p làm đ i s s ph i có cùng ki u v i tham s . Ch ng h n, n u b n th dòng l nh
ị
ạ
ấ
ố ố ẽ
ả
ể
ớ
ố
ẳ
ạ
ế
ạ
ử
ệ
sau:
printTwice(17);
B n s nh n đ
c thông báo l i ki u nh “cannot find symbol” (không tìm th y kí hi u); thông báo này
ạ ẽ
ậ
ượ
ỗ
ể
ư
ấ
ệ
không m y h u ích. Lí do là Java đang tìm m t ph
ng th c có tên
ấ
ữ
ộ
ươ
ứ
printTwice mà có th nh n đ i s là
ể
ậ
ố ố
s nguyên. Vì ch ng có ph
ng th c nào nh v y nên nó không th tìm th y “kí hi u” đó.
ố
ẳ
ươ
ứ
ư ậ
ể
ấ
ệ
System.out.println ch p nh n đ
c tham s thu c ki u d li u b t kì. Nh ng ph
ng th c này ch là
ấ
ậ
ượ
ố
ộ
ể
ữ ệ
ấ
ư
ươ
ứ
ỉ
m t ngo i l ; đ i đa s các ph
ng th c thì không d tính nh v y.
ộ
ạ ệ ạ
ố
ươ
ứ
ễ
ư ậ
3.9 Bi u đ ngăn x p
ể
ồ
ế
Các tham s và nh ng bi n khác ch t n t i trong ph
ng th c riêng c a chúng. Trong ph m vi
ố
ữ
ế
ỉ ồ ạ
ươ
ứ
ủ
ạ
c a
ủ main, không có cái gì g i là
ọ
s. N u b n th dùng bi n này, trình biên d ch s ph n đ i. T
ng t ,
ế
ạ
ử
ế
ị
ẽ
ả
ố
ươ
ự
trong printTwice không có th gì g i là
ứ
ọ
argument c .
ả
M t cách theo dõi xem nh ng bi n nào đ
c s d ng đâu là dùng m t
ộ
ữ
ế
ượ ử ụ
ở
ộ bi u đ ngăn x p
ể
ồ
ế . V i ví d
ớ
ụ
trên, bi u đ ngăn x p s nh sau:
ể
ồ
ế ẽ
ư
M i ph
ng th c đ u có m t h p màu xám g i là
ỗ
ươ
ứ ề
ộ ộ
ọ
khung., trong đó ch a các tham s và bi n c a
ứ
ố
ế ủ
ph
ng th c. Tên c a ph
ng th c đ
c ghi bên ngoài khung. Nh th
ng l , giá tr c a m i bi n l i
ươ
ứ
ủ
ươ
ứ ượ
ư ườ
ệ
ị ủ
ỗ
ế ạ
đ
c vi t trong m t h p cùng v i tên bi n ghi bên c nh.
ượ
ế
ộ ộ
ớ
ế
ạ
3.10 Ph
ng th c có nhi u tham s
ươ
ứ
ề
ố
Có m t lý do th
ng gây ra l i khi l p trình: đó chính là cú pháp đ miêu t và kích ho t ph
ng th c
ộ
ườ
ỗ
ậ
ể
ả
ạ
ươ
ứ
g m nhi u tham s . Tr
c h t, hãy nh r ng b n ph i khai báo ki u c a t ng tham s . Ch ng h n
ồ
ề
ố
ướ ế
ớ ằ
ạ
ả
ể ủ ừ
ố
ẳ
ạ
public static void
printTime(
int
hour,
int
minute) {
System.out.print(hour);
System.out.print(
":"
);