THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 88

đ i s , thì ph

ng th c mà b n kích ho t có th s thay đ i đ i t

ng, và trong tr

ng h p này b n s

ố ố

ươ

ể ẽ

ổ ố ượ

ườ

ạ ẽ

th y hi u ng. Dĩ nhiên, đó có th là đi u hay, song b n c n nh n th c đ

c vi c này.

ệ ứ

ạ ầ

ứ ượ

Còn m t đi m khác bi t gi a ki u nguyên th y và ki u đ i t

ng. B n không th b sung ki u nguyên

ố ượ

ể ổ

th y m i nào vào Java (tr khi b n là thanh viên trong h i đ ng tiêu chu n), nh ng b n có th t o nên

ộ ồ

ư

ể ạ

ki u đ i t

ng m i! B n s bi t cách làm nh v y trong ch

ng sau.

ố ượ

ạ ẽ ế

ư ậ

ươ

9.12 Thu t ng

gói:
M t t p h p các l p. Các l p Java đ c t ch c thành các gói.

ộ ậ

ượ ổ ứ

AWT:
Abstract Window Toolkit, m t trong các gói Java l n nh t và thông d ng nh t.

th c th :

Ví d l y t m t th lo i nào đó. Con mèo nhà tôi là m t th c th thu c th lo i “đ ng v t h miêu.”

ụ ấ ừ ộ

ể ạ

ể ạ

ậ ọ

M i đ i t ng đ u là th c th c a m t l p nào đó.

ỗ ố ượ

ể ủ

ộ ớ

bi n th c th :

ế

M t trong s các đ n v d li u đ c đ t tên đ c u thành m t đ i t

ng. T ng đ i t

ng (th c th )

ơ

ị ữ ệ

ượ ặ

ể ấ

ộ ố ượ

ố ượ

đ u có b n sao riêng các bi n th c th trong l p mà nó thu c vào.

ế

tham chi u:

ế

M t giá tr đ ch đ nh m t đ i t

ng. Trên s đ tr ng thái, m t tham chi u xu t hi n d

i d ng hình

ị ể ỉ ị

ộ ố ượ

ơ ồ ạ

ế

ướ ạ

mũi tên.
aliasing (bí danh):
Tình tr ng khi có nhi u bi n cùng tham chi u t i m t đ i t ng.

ế

ế ớ

ộ ố ượ

thu d n rác:

Quá trình tìm các đ i t ng không có tham chi u và thu h i dung l ng b nh mà chúng chi m gi .

ố ượ

ế

ượ

ế

tr ng thái:

M t hình th c di n t đ y đ t t c các bi n và đ i t ng cùng nh ng giá tr c a chúng t i m t th i

ễ ả ầ

ủ ấ ả

ế

ố ượ

ị ủ

đi m trong khi ch ng trình đ

c th c thi.

ươ

ượ

s đ tr ng thái:

ơ ồ ạ

M t hình nh “ch p l i” tr ng thái c a ch ng trình.

ụ ạ

ươ

9.13 Bài t p

Bài t p 1

1.

V i ch

ng trình sau đây, hãy v m t s đ ngăn x p cho th y các bi n đ a ph

ng và các đ i s

ươ

ẽ ộ ơ ồ

ế

ế

ươ

ố ố

c a

ủ main và riddle, r i cho th y m i đ i t ng mà hai bi n này ch đ n.

ọ ố ượ

ế

ỉ ế

2. K t qu c a ch

ng trình này là gì?

ế

ả ủ

ươ

public static void

main(String[] args) {

int

x = 5;

Point blank =

new

Point(1, 2);

System.out.println(riddle(x, blank));

System.out.println(x); System.out.println(blank.x);

System.out.println(blank.y);

}