Trang 5
Chng 1: CÁC KHÁI NIM C BN
BÀI 1. LÀM QUEN VI JAVA
I. Lch s java
Java là mt ngôn ng lp trình c Sun Microsystems gii thiu vào tháng 6 nm
1995. Tó, nó ã tr thành mt công c lp trình ca các lp trình viên chuyên nghip.
Java c xây dng trên nn tng ca C và C++. Do vy nó s dng các cú pháp ca C và
các c trng hng i tng ca C++.
Ban u Java c thit k làm ngôn ng vit chng trình cho các sn phm
in t dân dng nhu video, tivi, n thoi, máy nhn tin.. . Tuy nhiên vi s mãnh
m ca Java ã khin nó ni ting n mc vt ra ngoài s tng tng ca các nhà thit
k ra nó.
Java khi thu tên là Oak- là cây si mc phía sau vn phòng ca nhà thit k
chính ông Jame Gosling, sau này ông thy rng ã có ngôn ng lp trình tên Oak ri, do
vy nhóm thit k quyt nh i tên, “Java” là cái tên c chn, Java là tên ca mt
quán cafe mà nhóm thit k java hay n ó ung.
II. Java em là ai
Java là ngôn ng lp trình hng i tng, do vy không th dùng Java vit
mt chng trình hng chc nng. Java có th gii quyt hu ht các công vic mà các
ngôn ng khác có th làm c.
Java là ngôn ng va biên dch va thông dch. u tiên mã ngun c biên dch
bng công c JAVAC chuyn thành dng ByteCode. Sau ó c thc thi trên tng
loi máy c th nh chng trình thông dch JAVA. Mc tiêu ca các nhà thit k Java là
cho phép ngi lp trình vit chng trình mt ln nhng có th chy trên bt c phn
cng c th, th nên khu hiu ca các nhà thit k Java là “Write One, Run Any Where”.
Ngày nay, Java c s dng rng rãi vit chng trình chy trên Internet. Nó là
ngôn ng lp trình hng i tng c lp thit b, không ph thuc vào hu hành.
Java không ch dùng vit các ng dng chy n l hay trong mng mà còn xây
dng các trình iu khin thit b cho n thoi di ng, PDA, …
II. Mt sc trng ca java
1n gin
Nhng ngi thit k mong mun phát trin mt ngôn ng d hc và quen thuc
vi a s ngi lp trình. Java ta nh C++, nhng ã lc bi các c trng phc tp,
không cn thit ca C và C++ nh: thao tác con tr, thao tác nh ngha chng toán t
(operator overloading),… Java không s dng lnh “goto” cng nh file header (.h). Cu
trúc “struct” và “union” cng c loi b khi Java. Nên có ngi bo Java là “C++--“,
ng ý bo java là C++ nhng ã bi nhng th phc tp, không cn thit.
2. Hng i tng
Có th nói java là ngôn ng lp trình hoàn toàn hng i tng, tt cc trong java
u là s vt, âu âu cng là s vt.
3. c lp vi h nn
Mc tiêu chính ca các nhà thit k java là c lp vi h nn hay còn gi là c
lp phn cng và hu hành. ây là kh nng mt chng trình c vit ti mt máy
nhng có th chy c bt kâu
Trang 6
Tính c lp vi phn cng c hiu theo ngha mt chng trình Java nu chy
úng trên phn cng ca mt h máy nào ó thì nó cng chy úng trên tt c các h máy
khác. Mt chng trình ch chy úng trên mt s h máy c thc gi là ph thuc
vào phn cng.
Tính c lp vi hu hành c hiu theo ngha mt chng trình Java có th
chy c trên tt c các hu hành. Mt chng trình ch chy c trên mt s h
iu hành c gi là ph thuc vào hu hành.
Các chng trình vit bng java có th chy trên hu ht các h nn mà không cn
phi thay i gì, iu này ã c nhng ngi lp trình t cho nó mt khu hiu vit
mt ln, chy mi n, iu này là không th có vi các ngôn ng lp trình khác.
i vi các chng trình vit bng C, C++ hoc mt ngôn ng nào khác, trình biên
dch s chuyn tp lnh thành mã máy (machine code), hay lnh ca b vi x lý. Nhng
lnh này ph thuc vào CPU hin ti trên máy bn. Nên khi mun chy trên loi CPU
khác, chúng ta phi biên dch li chng trình.
4. Mnh m
Java là ngôn ng yêu cu cht ch v kiu d liu, vic ép kiu tng ba bãi ca
C, C++ nay c hn ch trong Java, u này làm chng trình rõ ràng, sáng sa, ít li
n.Java kim tra lúc biên dch và c trong thi gian thông dch vì vy Java loi b mt
mt s loi li lp trình nht nh.Java không s dng con tr và các phép toán con tr.
Java kim tra tt c các truy nhp n mng, chui khi thc thi m bo rng các truy
nhp ó không ra ngoài gii hn kích thc.
Trong các môi trng lp trình truyn thng, lp trình viên phi t mình cp phát
b nh. Trc khi chng trình kt thúc thì phi t gii phóng b nhã cp. Vn ny
sinh khi lp trình viên quên gii phóng b nhã xin cp trc ó. Trong chng trình
Java, lp trình viên không phi bn tâm n vic cp phát b nh. Qúa trình cp phát, gii
phóng c thc hin tng, nh dch v thu nht nhng i tng không còn s dng
na (garbage collection).
ch by li ca Java giúp n gin hóa qúa trình x lý li và hi phc sau li.
5. H tr lp trình a tuyn
ây là tính nng cho phép vit mt chng trình có nhiu n mã lnh c chy
song song vi nhau. Vi java ta có th vit các chng trình có kh nng chy song song
mt cách d dàng, hn th na vic ng b tài nguyên dùng chung trong Java cng rt
ng gin. u này là không th có i vi mt s ngôn ng lp trình khác nh C/C++,
pascal …
6. Phân tán
Java h try các mô hình tính toán phân tán: mô hình client/server, gi th
tc t xa…
7. H tr internet
Mc tiêu quan trng ca các nhà thit k java là to u kin cho các nhà phát trin
ng dng có th vit các chng trình ng dng internet và web mt cách d dàng, vi
java ta có th vit các chng trình s dng các giao thc TCP, UDP mt cách d dàng, v
lp trình web phía máy khách java có công ngh java applet, v lp trình web phía máy
khách java có công ngh servlet/JSP, v lp trình phân tán java có công ngh RMI,
CORBA, EJB, Web Service.
Trang 7
8. Thông dch
Các chng trình java cn c thông dch trc khi chy, mt chng trình java
c biên dch thành mã byte code mã c lp vi h nn, chng trình thông dch java s
ánh x mã byte code này lên mi nn c th, u này khin java chm chp i phn nào.
III. Các kiu ng dng Java
Vi Java ta có th xây dng các kiu ng dng sau:
1. ng dng Applets
Applet là chng trình Java c to ra s dng trên Internet thông qua các trình
duyt h tr Java nh IE hay Netscape. Applet c nhúng bên trong trang Web. Khi
trang Web hin th trong trình duyt, Applet sc ti v và thc thi ti trình duyt.
2. ng dng dòng lnh (console)
Các chng trình này chy t du nhc lnh và không s dng giao din ha.
Các thông tin nhp xut c th hin ti du nhc lnh.
3. ng dng ha
ây là các chng trình Java chy c lp cho phép ngi dùng tng tác qua giao
din ha.
4. JSP/Servlet
Java thích hp phát trin ng dng nhiu lp. Applet là chng trình ha
chy trên trình duyt ti máy trm. các ng dng Web, máy trm gi yêu cu ti máy
ch. Máy ch x lý và gi kt qu tr li máy trm. Các Java API chy trên máy ch chu
trách nhim x lý ti máy ch và tr li các yêu cu ca máy trm. Các Java API chy trên
máy ch này m rng kh nng ca các ng dng Java API chun. Các ng dng trên máy
ch này c gi là các JSP/Servlet. hoc Applet ti máy ch. X lý Form ca HTML là
cách s dng n gin nht ca JSP/Servlet. Chúng còn có thc dùng x lý d liu,
thc thi các giao dch và thng c thc thi thông qua máy ch Web.
5. ng dng c s d liu
Các ng dng này s dng JDBC API kt ni ti c s d liu. Chúng có th là
Applet hay ng dng, nhng Applet b gii hn bi tính bo mt.
6. ng dng mng
Java là mt ngôn ng rt thích hp cho vic xây dng các ng dng mng. Vi th
vin Socket bn có th lp trình vi hai giao thc: UDP và TCP.
7. ng dng nhiu tng
Vi Java bn có th xây dng phân tán nhiu tng vi nhiu h tr khác nhau nh:
RMI, CORBA, EJB, Web Service
8. ng dng cho các thit b di ng
Hin nay phn ln các thit b di ng nh: in thoi di ng, máy tr giúp cá
nhân… u h tr Java. Th nên bn có th xây dng các ng dng chy trên các thit b
di ng này. ây là mt kiu ng dng khá hp dãn, bi vì các thit b di ng này ngày
càng ph bin và nhu cu có các ng dng chy trên ó, c bit là các ng dng mang
tính cht gii trí nh game
IV. Máy o Java (JVM-Java Virtual Machine)
Máy o là mt phn mm mô phng mt máy tính tht (máy tính o). Nó có tp
hp các lnh logic xác nh các hot ng ca máy tính và có mt hu hành o.
Ngi ta có th xem nó nh mt máy tính tht (máy tính có phn cng o, hu hành
Trang 8
o). Nó thit lp các lp tru tng cho: Phn cng bên di, hu hành, mã ã biên
dch.
Trình biên dch chuyn mã ngun thành tp các lnh ca máy o mà không ph thuc
vào phn cng và hu hành c th. Trình thông dch trên mi máy s chuyn tp lnh
này thành chng trình thc thi. Máy o to ra mt môi trng bên trong thc thi các
lnh bng cách:
Ø Np các file .class
Ø Qun lý b nh
Ø Dn “rác”
Vic không nht quán ca phn cng làm cho máy o phi s dng ngn xp lu tr
các thông tin sau:
Ø Các “Frame” cha các trng thái ca các phng thc.
Ø Các toán hng ca mã bytecode.
Ø Các tham s truyn cho phng thc.
Ø Các bin cc b.
Khi JVM thc thi mã, mt thanh ghi cc b có tên “Program Counter” c s dng.
Thanh ghi này tr ti lnh ang thc hin. Khi cn thit, có th thay i ni dung thanh
ghi i hng thc thi ca chng trình. Trong trng hp thông thng thì tng lnh
mt ni tip nhau sc thc thi.
Mt khái nim thông dng khác trong Java là trình biên dch “Just In Time-JIT”. Các
trình duyt thông dng nh Netscape hay IE u có JIT bên trong tng tc thc thi
chng trình Java. Mc ích chính ca JIT là chuyn tp lnh bytecode thành mã máy c
th cho tng loi CPU. Các lnh này sc lu tr và s dng mi khi gi n.
Trang 9
BÀI 2 NN TNG CA JAVA
I. Tp ký t dùng trong java
Mi ngôn ng nói chung, ngôn ng lp trình nói riêng u phi xây dng trên mt
tp hp ch cái (hay còn gi là bng ch cái), các kí tc nhóm li theo mt cách nào
ó to thành các t, các t li c nhóm li thành các câu (trong ngôn ng lp trình
gi là câu lnh), mt chng trình máy tính tính là mt tp các câu lnh c b trí theo
mt trt t mà ngi vit ra chúng sp t
Ngôn ng java c c xây dng trên bng ch cái unicode, do vy ta có th
dùng các kí t unicode t tên cho các nh danh.
II. T khoá ca Java
Mi ngôn ng lp trình có mt tp các t khoá, ngi lp trình phi s dng t
khoá theo úng ngha mà ngi thit k ngôn ngã ra, ta không thnh ngha li
ngha ca các t khoá, nh s dng nó t tên bin, hàm..
Sau ây là mt s t khoá thng gp:
T khóa Mô t
abstract
S dng khai báo lp, phng thc tru tng
boolean
Kiu d liu logic
break
c s dng kt thúc vòng lp hoc cu trúc switch
byte
kiu d liu s nguyên
case
c s dng trong ln switch
cast
Cha c s dng ( dành cho tng lai)
catch
c s dng trong x lý ngoi l
char
kiu d liu ký t
class
Dùng khai báo lp
const
Cha c dùng
continue
c dùng trong vòng lp bt u mt vòng lp mi
default
c s dng trong lnh switch
do
c dùng trong vòng lp u kin sau
double
kiu d liu s thc
else
kh nng la chn th hai trong câu lnh if
extends
ch rng mt lp c k tha t mt lp khác
false
Gía tr logic
final
Dùng khai báo hng s, phng thc không th ghi è, hoc lp không
th k tha
finally phn cui ca khi x lý ngoi l
float
kiu s thc
for
Câu lnh lp
goto
Cha c dùng
if
Câu lnh la chn
implements
ch rng mt lp trin khai t mt giao din
import
Khai báo s dng th vin
instanceof
kim tra mt i tng có phi là mt th hin ca lp hay không
interface
s dng khai báo giao din
long
kiu s nguyên
native
Khai báo phng thc c vit bng ngông ng biên dch C++
new
to mt i tng mi
Trang 10
null mt i tng không tn ti
package
Dùng khai báo mt gói
private
c t truy xut
protected
c t truy xut
public
c t truy xut
return
Quay t phng thc v ch gi nó
short
kiu s nguyên
static
Dùng khai báo bin, thuc tính tnh
super
Truy xut n lp cha
switch
lnh la chn
synchronized
mt phng thc c quyn truy xut trên mt i tng
this
Ám ch chính lp ó
throw
Ném ra ngoi l
throws
Khai báo phng thc ném ra ngoi l
true
Giá tr logic
try
s dng bt ngoi l
void
Dùng khai báo mt phng thc không tr v giá tr
while
Dùng trong cu trúc lp
III. nh danh (tên)
Tên dùng xác nh duy nht mt i lng trong chng trình. Trong java tên c
t theo quy tc sau:
- Không trùng vi t khoá
- Không bt u bng mt s, tên phi bt u bng kí t hoc bt u bng kí $,_
- Không cha du cách, các kí t toán hc nh +, -, *,/, %..
- Không trùng vi mt nh danh khác trong cùng mt phm vi
Chú ý:
- Tên nên t sao cho có th mô tc i tng trong thc t
- Ging nh C/C++, java có phân bit ch hoa ch thng
- Trong java ta có tht tên vi dài tu ý
- Ta có th s dng các kí t ting vit t tên
Quy c v t tên trong java
Ta nên t tên bin, hng, lp, phng thc sao cho ngha ca chúng rõ ràng, d hiu,
khoa hc và mang tính c l quc t. Do java có phân bit ch hoa, ch thng nên ta
phi cn thn và chú ý.
Sau ây là quy c t tên trong java (chú ý ây ch là quy c do vy không bt buc
phi tuân theo quy c này):
- i vi bin và phng thc thì tên bao gi cng bt u bng ký t thng, nu tên
có nhiu t thì ghép li thì: ghép tt c các t thành mt, ghi tu tiên ch thng,
vit hoa kí tu tiên ca mi t theo sau trong tên, ví d area, radius, readInteger…
-i vi tên lp, giao din ta vit hoa các kí tu tiên ca mi t trong tên, ví d lp
WhileTest, Circle
- Tên hng bao gi cng vit hoa, nu tên gm nhiu t thì chúng c ni vi hau bi
kí t ghch di ‘_’, ví d PI, MAX_VALUE
IV. Cu trúc mt chng trình java
- Mi ng dng Java bao gm mt hoc nhiu n v biên dch (mi n v biên dch
là mt tp tin có phn m rng Java)
- Mi n v biên dch bao gm mt hoc nhiu lp
Trang 11
- Mi ng dng c lp phi có duy nht mt phng thc main (m bt u ca ng
dng)
- Mi n v biên dch có nhiu nht mt lp c khai báo là public, nu nh trong
n v biên dch có lp public thì tên ca n v biên dch phi trùng vi tên ca lp
public (ging ht nhau c ký t hoa ln ký t thng)
- Bên trong thân ca mi lp ta khai báo các thuc tính, phng thc ca lp ó, Java
là ngôn ng hng i tng, do vy mã lnh phi nm trong lp nào ó. Mi lnh u
c kt thúc bng du chm phy “;”.
- Trong ngôn ng Java, lp là mt n v mu có cha d liu và mã lnh liên quan n
- mt thc th nào ó. Khi xây dng mt lp, thc cht bn ang to ra mt mt kiu d
liu. Kiu d liu mi này c s dng xác nh các bin mà ta thng gi là “i
ng”. i tng là các th hin (instance) ca lp. Tt c các i tng u thuc v
mt lp có chung c tính và hành vi. Mi lp xác nh mt thc th, trong khi ó mi
i tng là mt th hin thc s.
- Khi ban khai báo mt lp, bn cn xác nh d liu và các phng thc ca lp ó.
V c bn mt lp c khai báo nh sau:
//Nhp khu các th vin
import th_vin;
//Xây dng các lp
public class clsMain{
public static void main(String args[])
{
//m bt u ca chng trình
}
}
class lp1
{
}
class lp2
{
}
t n v biên dch là mt tp
tin .java
Trang 12
Cú pháp:
class classname
{ var_datatype variablename;
...........
<met_datatype> methodname (parameter_list){...........}
............
}
Trong ó:
class - T khoá xác nh lp
classname - Tên ca lp
var_datatype - kiu d liu ca bin
variablename - Tên ca bin
met_datatype - Kiu d liu tr v ca phng thc
methodname - Tên ca phng thc
parameter_list – Các tham sc ca phng thc
- Bn còn có thnh ngha mt lp bên trong mt lp khác. ây là lp xp lng nhau,
các th hin (instance) ca lp này tn ti bên trong th hin ca mt lp che ph chúng.
Nó chi phi vic truy nhp n các thành phn ca lp bao ph chúng. Có hai loi lp
trong ó là lp trong tnh “static” và lp trong không tnh “non static”
+ Lp trong tnh (static)
Lp trong tnh c nh ngha vi t khoá “static”. Lp trong tnh có th truy nhp
vào các thành phn tnh ca lp ph nó.
+ Lp trong không tnh (non static)
Lp bên trong (không phi là lp trong tnh) có th truy nhp tt c các thành phn ca
lp bao nó, song không th ngc li.
V. Chng trình JAVA u tiên
có th biên dch và chy các chng trình java ta phi cài
- JRE (Java Runtime Enviroment) môi trng thc thi ca java, nó bao gm: JVM (Java
Virtual Machine) máy o java vì các chng trình java c thông dch và chy trên
máy o java và tp các th vin cn thit chy các ng dng java.
- B công c biên dch và thông dch JDK ca Sun Microsystem
Sau khi cài t JDK (gi s th mc cài t là C:\JDK1.4) ta s nhn c mt cu trúc
th mc nh sau:
- biên dch mt chng trình java sang mã byte code ta dùng lnh
C:\JDK1.4\BIN\javac TênTp.java
- thông dch và chy chng trình ta s dng lnh
Trang 13
C:\JDK1.4\BIN\java TênTp
biên dch và chy chng trình Java n gin ta nên thit t hai bin môi trng
“paht” và “classpath” nh sau:
-i vi dòng WinNT:
+ R-Click vào My Computerà chn Propertiesà chn AdvancedàEnviroment
Variables
+ Trong phn System variables chn new thêm bin môi trng mi, trong hp
thoi hin ra gõ “classpath” vào ô Variable Name và
“.;C:\jdk1.4\lib\tools.jar;C:\jdk1.4\lib\dt.jar;C:\jdk1.4\jre\lib\rt.jar” trong ô variable
value (chú ý không gõ du “ vào, mc ích cho d nhìn mà thôi)
+ Cng trong phn System variables tìm n phn path trong danh sáchàchn edit
sa li giá tr hin có, trong ô value ta thêm vào cui “;C:\jdk1.4\bin”
Công vic t các bin môi trng ã xong, thy c tác dng ca các bin môi
tng ta cn phi khi ng li máy
-i vi dòng Win9X:
M tp C:\Autoexec.bat sau ó thêm vào hai dòng sau:
+classpath=.;C:\jdk1.4\lib\tools.jar;C:\jdk1.4\lib\dt.jar;C:\jdk1.4\jre\lib\rt.jar
+ path=…;c:\jdk1.4\bin
Khi ng li máy thy c tác dng ca các bin môi trng này
Ví du tiên: chng trình Hello World (chng trình khi chy s in ra màn hình li
chào Hello World)
Các bc:
Trang 14
- M mt chng trình son tho vn bn h tr asciii, nh notepad, wordpad,
EditPlus… và gõ vào các dòng sau:
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World");
}
}
- Ghi li vi cái tên C:\HelloWorld.java (chú ý tên tp phi trùng vi tên lp, k c ch
hoa ch thng, phn m rng là java)
- M ca s DOS Prompt
+ Chuyn vào th mc C:\
+ Gõ lnh javac HelloWorld.java biên dch chng trình, nu vic biên dch
thành công (chng trình không có li cú pháp) thì ta s thu c tp
HelloWorld.class trong cùng th mc, nu trong chng trình còn li cú pháp
thì trong bc này ta s nhn c mt thông báo li và lúc này tp
HelloWorld.class cng không c to ra
+ Gõ lnh java HelloWorld (chú ý không gõ phn m rng) chy chng trình
HelloWorld.
Sau khi thông dch và chy ta nhn c
VI. Chú thích trong chng trình
Trong java ta có 3 cách ghi chú thích
Cách 1: s dng cp /* và */ ý ngha ca cp chú thích này ging nh ca C, C++
Cách 2: s dng cp // ý ngha ca cp chú thích này ging nh ca C, C++
Cách 3: s dng cp /** và */, ây là kiu chú thích tài liu (không có trong C/C++), nó
dùng to ra tài liu chú thích cho chng trình.
Vi cách th nht và cách ba ta có th vit chú thích trên nhiu dòng, vi cách chú thích
hai ta ch có th chú thích trên mt dòng.
Chú ý: Trong java ta có tht chú thích âu?, câu tr li là: âu có tht c mt
du cách thì ó có tht chú thích.
Trang 15
VII. Kiu d liu
1. Các kiu d liu nguyên thu
T khoá Mô t Kích c Ti thiu Ti a
Lp bao
(kiu s nguyên)
byte s nguyên mt byte 8 bit -128 127 Byte
short s nguyên ngn 16 bit -2
15
2
15
-1 Short
int s nguyên 32 bit -2
31
2
31
-1 Integer
long s nguyên dài 64 bit -2
63
-2
63
-1 Long
(kiu s thc)
float kiu thc vi chính
xác n
32 bit IEEE754 IEEE75
4
Float
double Double-precision
floating point
64 bit IEEE754 IEEE75
4
Double
(kiu khác)
char kiu kí t 16 bit Unicode 0 Unicode
2
16
-1
Character
boolean kiu logic true hoc false - - Boolean
void - - - - Void
c m ca các bin có kiu nguyên thy là vùng nh ca chúng c cp phát phn
stack. Do vy vic truy xut vào mt bin kiu nguyên thy rt nhanh.
2. Kiu tham chiu
Trong Java có 3 kiu d liu tham chiu
Kiu d liu Mô t
Mng (Array) Tp hp các d liu cùng kiu.
Lp (Class) Là s cài t mô t v mt i tng trong bài toán.
Giao din
(Interface)
Là mt lp thun tru tng c to ra cho phép cài t
a tha k trong Java.
c m ca các bin kiu tham chiu là nó cha a ch ca i tng mà nó tr
n.
u nguyên thu
kiu logic boolean
Kiu s
Kiu s thc
Kiu kí t
Kiu s
boolean
char
byte short
int
long
float
doubl
e
Trang 16
Vùng nh ca bin tham chiu c cp phát vùng nh stack còn vùng nh ca
i tng c cp phát vùng nh heap. Vic truy xt vào vùng nh heap chm hn truy
xt vào vùng nh stack tuy nhiên java có c ch cho phép truy cp vào vùng nh heap vi
tc xp x bng tc truy cp vào vùng nh stack.
VIII. Khai báo bin
1. Khai báo bin
ng t ngôn ng C/C++, khai báo bin trong java ta s dng cú pháp sau:
type name [=InitValue];
trong ó:
- type là kiu d liu cu bin
- name là tên ca bin, tên bin là mt xâu kí tc t theo quy tc t tên ca java
- InitValue là giá tr khi to cho bin, ây là phn tu chn, nu b qua phn này thì giá
tr ban u ca bin c khi to giá tr mc nh
Chú ý:
- Nu cn khai báo nhiu bin có cùng mt kiu d liu ta có tht các khai báo các bin
trên mt dòng, các bin này c phân cách nhau bi du phy
- Java s x lý các bin không c khi u giá tr nh sau:
+ i vi thuc tính (bin c khai báo trong phm vi ca lp) thì Java s tng
khi gán giá tr cho các bin theo quy tc sau:
+ giá tr 0 cho kiu d liu s
+ false cho kiu logic
+ kí t null (mã 0) cho kí t
+ giá tr null cho kiu i tng
+ i vi các bin cc b thì bin không c khi gán giá tr mc nh, tuy nhiên
Java s báo li nu ta s dng mt bin cha c nhn giá tr
2. Phm vi bin
Mi bin c khai báo ra có mt phm vi hot ng, phm vi ca bin là ni mà
bin có thc truy cp, u này xác nh c tính thy c và thi gian sng ca bin.
Bin tham chiu
i tng