You are on page 1of 16

Chng 1: Nhp mn Java

Chng 1: NHP MN JAVA


Mc tiu hc xong chng ny SV c kh nng:
Trnh by c cc c trng ca Java Phn bit cc kiu chng trnh Java nh ngha v my o Java Cc ni dung ca JDK (Java Development Kit) Trnh by c cc c trng ca Java2

1.1 Gii thiu Java 1.1.1.Lch s pht trin Java:


Thng 6 nm 1995, ngn ng lp trnh Java c Sun Microsystems gii thiu. T , Java tr thnh mt cng c lp trnh ca cc lp trnh vin chuyn nghip. Java c xy dng trn nn tng ca C v C++. Do vy Java s dng c php ca C v cc c trng hng i tng ca C++. Ngn ng lp trnh Java c u im so ci C, C++ chy nhanh, gn, hiu qu v c lp thit b tc l c th chy trn nhiu loi CPU khc nhau, di cc mi trng khc nhau. Do c trng khng ph thuc thit b nn Java tr thnh ngn ng lp trnh cho Internet.

1.1.2. Java l g?
Java l ngn ng lp trnh hng i tng. Java c th gii quyt hu ht cc cng vic m cc ngn ng khc c th lm c. Java l ngn ng va bin dch va thng dch. M ngun c bin dch bng cng c JAVAC chuyn thnh dng ByteCode, sau c thc thi trn tng loi my c th nh chng trnh thng dch. Mc tiu ca cc nh thit k Java l cho php ngi lp trnh vit chng trnh mt ln nhng c th chy trn bt c phn cng c th. Ngy nay, Java c s dng rng ri vit chng trnh chy trn Internet. N l ngn ng lp trnh hng i tng c lp thit b, khng ph thuc vo h iu hnh. N khng ch dng vit cc ng dng chy n l hay trong mng m cn xy dng cc trnh iu khin thit b cho in thoi di ng, PDA,

1.2 Cc c trng ca Java 1.2.1 n gin


Java c loi b cc c trng phc tp ca C v C++ nh thao tc con tr, thao tc np (overload), Java khng s dng lnh goto cng nh file header (.h). Cu trc struct v union cng c loi b khi Java.

Ti liu tham kho Java

1.2.2 Hng i tng


Java c thit k xoay quanh m hnh hng i tng. V vy trong Java, tiu im l d liu v cc phng php thao tc ln d liu . D liu v cc phng php m t trng thi v cch ng x ca mt i tng trong Java.

1.2.3 c lp phn cng v h iu hnh


y l kh nng mt chng trnh c vit ti mt my nhng c th chy c bt k u. Chng c th hin mc m ngun v mc nh phn. mc m ngun, ngi lp trnh cn m t kiu cho mi bin. Kiu d liu trong Java nht qun cho tt c cc h iu hnh v phn cng khc nhau. Java c ring mt th vin cc lp c s. V vy chng trnh Java c vit trn mt my c th dch v chy trn tru trn cc loi my khc m khng cn vit li. mc nh phn, mt chng trnh bin dch c th chy trn nn khc m khng cn dch li m ngun. Tuy vy cn c phn mm my o Java (s cp n phn sau) hot ng nh mt trnh thng dch ti my thc thi.

compi ler compi ler compi ler

Trnh bin dch s chuyn cc chng trnh vit bng C, C++ hay ngn ng khc thnh m my nhng ph thuc vo CPU. Nn khi mun chy trn loi CPU khc, chng ta phi bin dch li chng trnh. Mi trng pht trin ca Java c chia lm hai phn: Trnh bin dch v trnh thng dch. Khng nh C hay C++, trnh bin dch ca Java chuyn m ngun thnh dng bytecode c lp vi phn cng m c th chy trn bt k CPU no. Nhng thc thi chng trnh di dng bytecode, ti mi my cn phi c trnh thng dch ca Java hay cn gi l my o Java. My o Java chuyn bytecode thnh m lnh m CPU thc thi c.

1.2.4 Mnh m
Trang 2

Chng 1: Nhp mn Java


Java yu cu cht ch v kiu d liu v phi m t r rng khi vit chng trnh. Chng s kim tra lc bin dch v c trong thi gian thng dch v vy Java loi b cc kiu d liu d gy ra li.

1.2.5 Bo mt
Java cung cp mt s lp kim tra bo mt. Lp u tin, d liu v cc phng php c ng gi bn trong lp. Chng ch c truy xut thng qua cc giao din m lp cung cp. Java khng h tr con tr v vy khng cho php truy xut b nh trc tip. N cng ngn chn khng cho truy xut thng tin bn ngoi ca mng bng k thut trn v cng cung cp k thut dn rc trong b nh. Cc c trng ny to cho Java an ton v c kh nng c ng cao. Trong lp th hai, trnh bin dch kim sot m bo m an ton. Lp th ba c m bo bi trnh thng dch. Chng kim tra xem bytecode c m bo cc qui tc an ton trc khi thc thi. Lp th t kim sot vic np cc lp ln b nh gim st vic vi phm gii hn truy xut trc khi np vo h thng.

1.2.6 Phn tn
Java c th dng xy dng cc ng dng c th lm vic trn nhiu phn cng, h iu hnh v giao din ha. Java c thit k cho cc ng dng chy trn mng. V vy chng c s dng rng ri trn Internet, ni s dng nhiu nn tng khc nhau.

1.2.7 a lung
Chng trnh Java s dng k thut a tin trnh (Multithread) thc thi cc cng vic ng thi. Chng cng cung cp gii php ng b gia cc tin trnh. c tnh h tr a tin trnh ny cho php xy dng cc ng dng trn mng chy uyn chuyn.

1.2.8 ng
Java c thit k nh mt ngn ng ng p ng cho nhng mi trng m. Cc chng trnh Java b xung cc thng tin cho cc i tng ti thi gian thc thi. iu ny cho php kh nng lin kt ng cc m.

1.3 Cc kiu chng trnh Java


Chng ta c th xy dng cc loi chng trnh Java nh sau:

1.3.1 Applets
y l chng trnh chy trn Internet thng qua cc trnh duyt h tr Java nh IE hay Netscape. Bn c th dng cc cng c ca Java xy dng Applet. Applet c nhng bn trong trang Web hoc file HTML. Khi trang Web hin th trong trnh duyt, Applet s c np v thc thi. Ti liu tham kho Java

1.3.2 ng dng thc thi qua dng lnh


Cc chng trnh ny chy t du nhc lnh v khng s dng giao din ha. Cc thng tin nhp xut c th hin ti du nhc lnh.

1.3.3 ng dng ha
y l cc chng trnh Java chy c lp cho php ngi dng tng tc qua giao din ha.

1.3.4 Servlet
Java thch hp pht trin ng dng nhiu lp. Applet l chng trnh ha chy trn trnh duyt ti my trm. cc ng dng Web, my trm gi yu cu ti my ch. My ch x l v gi ngc kt qu tr li my trm. Cc chng trnh Java API chy trn my ch gim st cc qu trnh ti my ch v tr li cc yu cu ca my trm. Cc chng trnh Java API chy trn my ch ny m rng kh nng ca cc ng dng Java API chun. Cc ng dng trn my ch ny c gi l cc Servlet. hoc Applet ti my ch. Cc x l trn Form ca HTML l cch s dng n gin nht ca Servlet. Chng cn c th c dng x l d liu, thc thi cc transaction v thng c thc thi qua my ch Web.

1.3.5 ng dng c s d liu


Cc ng dng ny s dng JDBC API kt ni ti c s d liu. Chng c th l Applet hay ng dng, nhng Applet b gii hn bi tnh bo mt.

1.4 My o Java (JVM-Java Virtual Machine)


My o Java l tri tim ca ngn ng Java. Mi trng Java bao gm nm phn t sau: Ngn ng nh ngha Bytecode Cc th vin lp Java/Sun My o Java (JVM) Cu trc ca file .class Kh nng c ng ca file .class cho php cc chng trnh Java vit mt ln nhng chy bt k u. Kh nng ny c c nh s gip ca my o Java.

1.4.1 My o Java l g ?
My o l mt phn mm da trn c s my tnh o. N c tp hp cc lnh logic xc nh cc hot ng ca my tnh. Ngi ta c th xem n nh mt h iu hnh thu nh. N thit lp cc lp tru tng cho: Phn cng bn di, h iu hnh, m bin dch. Trnh bin dch chuyn m ngun thnh tp cc lnh ca my o m khng ph thuc vo phn cng c th. Trnh thng dch trn mi my s chuyn tp lnh ny thnh chng trnh thc thi. My o to ra mt mi trng bn trong thc thi cc lnh bng cch: Trang 4

Chng 1: Nhp mn Java


Np cc file .class Qun l b nh Dn rc Vic khng nht qun ca phn cng lm cho my o phi s dng ngn xp lu tr cc thng tin sau: Cc Frame cha cc trng thi ca cc phng php. Cc ton hng ca m bytecode. Cc tham s truyn cho phng php. Cc bin cc b. Khi JVM thc thi m, mt thanh ghi cc b c tn Program Counter c s dng. Thanh ghi ny tr ti lnh ang thc hin. Khi cn thit, c th thay i ni dung thanh ghi i hng thc thi ca chng trnh. Trong trng hp thng thng th tng lnh mt ni tip nhau s c thc thi. Mt khi nim thng dng khc trong Java l trnh bin dch Just In TimeJIT. Cc trnh duyt thng dng nh Netscape hay IE u c JIT bn trong tng tc thc thi chng trnh Java. Mc ch chnh ca JIT l chuyn tp lnh bytecode thnh m my c th cho tng loi CPU. Cc lnh ny s c lu tr v s dng mi khi gi n.

1.4.2 Qun l b nh v dn rc
Trong C, C++ hay Pascal ngi lp trnh s dng phng php nguyn thy cp pht v thu hi b nh vng Heap. Heap l vng b nh ln c phn chia cho tt c cc thread. qun l Heap, b nh c theo di qua cc danh sch sau: Danh sch cc vng nh rnh cha cp pht. Danh sch cc vng cp. Khi c mt yu cu v cp pht b nh, h thng xem xt trong danh sch cha cp pht ly ra khi b nh u tin c kch c st nht. Chin thut cp pht ny gim ti thiu vic phn mnh ca heap. Coalescing l k thut khc cng gim thiu vic phn mnh ca heap bng cch gom li cc vng nh cha dng lin nhau. Cn k thut sp xp li cc phn dng to vng nh rnh ln hn gi l Compaction. Java s dng hai heap ring bit cho cp pht vng nh tnh v vng nh ng. Mt heap (heap tnh) cha cc nh ngha v lp, cc hng v danh sch cc phng php. Heap cn li (heap ng) c chia lm hai phn c cp pht theo hai chiu ngc nhau. Mt bn cha i tng cn mt bn cha con tr tr n i tng . Handle l cu trc bao gm hai con tr. Mt tr n bng phng php ca Ti liu tham kho Java

i tng, con tr th hai tr n chnh i tng . Ch rng khi compaction cn cp nht li gi tr con tr ca cu trc handle. Thut ton dn rc c th p dng cho cc i tng t trong heap ng. Khi c yu cu v b nh, trnh qun l heap trc tin kim tra danh sch b nh cha cp pht. Nu khng tm thy khi b nh no ph hp (v kch c) th trnh dn rc s c kch hot khi h thng rnh. Nhng khi i hi b nh cp bch th trnh dn rc s c kch hot ngay.

Trnh dn rc gi hm Finalize trc khi dn dp i tng. Hm ny s dn dp cc ti nguyn bn ngoi nh cc file ang m. Cng vic ny khng c trnh dn rc thc thi. 1.4.3 Qu trnh kim tra file .class
Vic kim tra c p dng cho tt c cc file .class sp c np ln b nh m bo tnh an ton. Trnh Class Loader s kim tra tt c cc file .class khng thuc h iu hnh vi mc ch gim st s tun th cc nghi thc pht hin cc file .class c nguy c gy h hng n b nh, h thng file cc b, mng hoc h iu hnh. Qu trnh kim tra s xem xt n tnh ton vn ton cc ca lp. File .class bao gm ba phn logic l: Bytecode Thng tin v Class nh phng php, giao din v cc gi tr c tp hp trong qu trnh bin dch. Cc thuc tnh v lp. Cc thng tin ca file .class c xem xt ring r trong cc bng sau: Bng Field cha cc thuc tnh Bng Method cha cc hm ca class Bng Interface cha cc giao din v cc hng s Qu trnh kim tra file .class c thc hin bn mc: Mc u tin thc hin vic kim tra c php m bo tnh cu trc v tnh ton vn c php ca file .class c np. Mc th hai s xem xt file .class m bo cc file ny khng vi phm cc nguyn tc v s nht qun ng ngha. Mc th ba s kim tra bytecode. Trong bc ny cc thng tin so snh s l s thng s truyn ca hm, kh nng truy xut sai ch s ca mng, chui, biu thc. Mc th t s kim tra trong thi gian thc thi gim st cc vic cn li m ba bc trn cha lm. V d nh lin kt ti cc lp khc trong khi thc thi, hay kim tra quyn truy xut. Nu mi iu tha mn, lp s c khi to.

Trang 6

Chng 1: Nhp mn Java


1.5 B cng c pht trin JDK (Java Development Kit)
Sun Microsystem a ra ngn ng lp trnh Java qua sn phm c tn l Java Development Kit (JDK). Ba phin bn chnh l: Java 1.0 - S dng ln u vo nm 1995 Java 1.1 a ra nm 1997 vI nhiu u im hn phin bn trc. Java 2 Phin bn mi nht JDK bao gm Java Plug-In, chng cho php chy trc tip Java Applet hay JavaBean bng cch dng JRE thay cho s dng mi trng thc thi mc nh ca trnh duyt. JDK cha cc cng c sau:

1.5.1 Trnh bin dch, 'javac'


C php: javac [options] sourcecodename.java

1.5.2 Trnh thng dch, 'java'


C php: java [options] classname

1.5.3 Trnh dch ngc, 'javap'


C php: javap [options] classname

1.5.4 Cng c sinh ti liu, 'javadoc'


C php: javadoc [options] sourcecodename.java

1.5.5 Chng trnh tm li - Debug, 'jdb


C php: jdb [options] sourcecodename.java hoc jdb -host -password [options] sourcecodename.java

1.5.6 Chng trnh xem Applet , 'appletviewer


C php: appletviewer [options] sourcecodename.java / url

1.6 Java Core API


Nhn Java API c a ra qua phin bn JFC 1.1. Mt s package thng dng c lit k nh sau:

1.6.1 java.lang
Ti liu tham kho Java

Cha cc lp quan trng nht ca ngn ng Java. Chng bao gm cc kiu d liu c bn nh Character, Integer, Chng cng cha cc lp lm nhim v x l li v cc lp nhp xut chun. Mt vi lp quan trng khc nh String hay StringBuffer.

1.6.2 java.applet
y l package nh nht cha mt mnh lp Applet. Cc lp Applet nhng trong trang Web u dn xut t lp ny.

1.6.3 java.awt
Package ny c gi l Abstract Window Toolkit (AWT). Chng cha cc ti nguyn dng to giao din ha. Mt s lp bn trong l: Button, GridBagLayout, Graphics.

1.6.4 java.io
Cung cp th vin nhp xut chun ca ngn ng. Chng cho php to v qun l dng d liu theo mt vi cch.

1.6.5 java.util
Package ny cung cp mt s cng c hu ch. Mt vi lp ca package ny l: Date, Hashtable, Stack, Vector v StringTokenizer.

1.6.6 java.net
Cung cp kh nng giao tip vi my t xa. Cho php to v kt ni vi Socket hoc URL.

1.6.7 java.awt.event
Cha cc lp dng x l cc s kin trong chng trnh nh chut, bn phm.

1.6.8 java.rmi
Cng c gi hm t xa. Chng cho php to i tng trn my khc v s dng cc i tng trn my cc b.

1.6.9 java.security
Cung cp cc cng c cn thit m ha v m bo tnh an ton ca d liu truyn gia my trm v my ch.

1.6.10 java.sql
Package ny cha Java DataBase Connectivity (JDBC), dng truy xut c s d liu quan h nh Oracle, SQL Server.

1.7 Cc c trng mi ca Java 2


Cc phin bn trc ca Java ch thch hp vit cc ng dng nh trn Web hn l xy dng cc ng dng chy trn mng m nhim ton b cc cng vic ca ca mt cng ty hoc h thng phn tn. Java 2 p ng yu cu ny. Mt vi c trng ca chng l: Trang 8

Chng 1: Nhp mn Java


Swing: y l mt tp cc lp v giao din mi dng to giao din ng dng ha bng thit k Look and Feel Ko v th: y l kh nng di chuyn thng tin gia cc ng dng hay cc phn khc nhau ca chng trnh. Java 2D API: Cha cc tp hp cc lp h tr cho nh v ha hai chiu. m thanh: Tp hp cc c trng m thanh hon ton mi cho Java. RMI :RMI (Remote Method Invocation) cho php cc ng dng gi cc phng php ca i tng ti my t xa v cho php giao tip vi chng.

Ti liu tham kho Java

Chng2: BIN, KIU D LIU C BN V TON T


Mc tiu: hc xong chng ny SV c kh nng:
S dng bin ph hp, xc nh phm vi, cch khai bo bin M t v s dng cc kiu d liu So snh s ging v khc nhau gia cc kiu d liu trong C, JAVA

2.1 BIN 2.1.1 Khai bo bin


C php khai bo bin:

dataType varName;
Trong , dataType l kiu d liu ca bin, varName l tn bin. Trong Java, vic t tn bin phi tun theo cc quy tc sau: Ch c bt u bng mt k t (ch), hoc mt du gch di , hoc mt k t dollar Khng c khong trng gia tn Bt u t k t th hai, c th dng cc k t (ch), ch s, du dollar, du gch di Khng trng vi cc t kho C phn bit ch hoa ch thng

2.1.2 Phm vi hot ng ca bin


Mt bin c phm vi hot ng trong ton b khi lnh m n c khai bo. Mt khi lnh bt u bng du { v kt thc bng du }: Nu bin c khai bo trong mt cu trc iu khin, bin c phm vi hot ng trong khi lnh tng ng. Nu bin c khai bo trong mt phng thc (Khng nm trong khi lnh no), bin c phm vi hot ng trong phng thc tng ng: c th c s dng trong tt c cc khi lnh ca phng thc. Nu bin c khai bo trong mt lp (Khng nm trong trong mt phng thc no), bin c phm vi hot ng trong ton b lp tng ng: c th c s dng trong tt c cc phng thc ca lp.

2.2 Kiu d liu: 2.2.1.Cc kiu d liu


Trong Java, kiu d liu c chia thnh hai loi: Cc kiu d liu c bn Cc kiu d liu i tng Trang 10

Chng 1: Nhp mn Java


Kiu d liu c bn Java cung cp cc kiu d liu c bn nh sau: byte: Dng lu d liu kiu s nguyn c kch thc mt byte (8 bt). Phm vi biu din gi tr t -128 n 127. Gi tr mc nh l 0. char: Dng lu d liu kiu k t hoc s nguyn khng m c kch thc 2 byte (16 bt). Phm vi biu din gi tr t 0 n u\ffff. Gi tr mc nh l 0. boolean:Dng lu d liu ch c hai trng thi ng hoc sai ( ln ch c 1 bt). Phm vi biu din gi tr l {True, False}. Gi tr mc nh l False. short: Dng lu d liu c kiu s nguyn, kch c 2 byte (16 bt). Phm vi biu din gi tr t - 32768 n 32767. Gi tr mc nh l 0. int: Dng lu d liu c kiu s nguyn, kch c 4 byte (32 bt). Phm vi biu din gi tr t -2,147,483,648 n 2,147,483,647. Gi tr mc nh l 0. float:Dng lu d liu c kiu s thc, kch c 4 byte (32 bt). Gi tr mc nh l 0.0f. double: Dng lu d liu c kiu s thc c kch thc ln n 8 byte. Gi tr mc nh l 0.00d long: Dng lu d liu c kiu s nguyn c kch thc ln n 8 byte. Gi tr mc nh l 0l. Kiu d liu i tng Trong Java, c 3 kiu d liu i tng: Array: Mt mng ca cc d liu cng kiu class: D liu kiu lp i tng do ngi dng nh ngha. Cha tp cc thuc tnh v phng thc. interface: D liu kiu lp giao tip do ngi dng nh ngha. Cha cc phng thc ca giao tip. p kiu (Type casting) V d, nhiu khi gp tnh hung cn cng mt bin c dng integer vi mt bin c dng float. x l tnh hung ny, Java s dng tnh nng p kiu (type casting) ca C/C++. on m sau y thc hin php cng mt gi tr du phy ng (float) vi mt gi tr nguyn (integer).

float c = 35.8; int b = (int)c + 1;


u tin gi tr du phy ng c c i thnh gi tr nguyn 35. Sau n c cng vi 1 v kt qu l gi tr 36 c lu vo b. Trong Java c hai loi p kiu d liu: Ni rng (widening): qu trnh lm trn s t kiu d liu c kch thc nh Ti liu tham kho Java

hn sang kiu c kch thc ln hn. Kiu bin i ny khng lm mt thng tin. V d chuyn t int sang float. Chuyn kiu loi ny c th c thc hin ngm nh bi trnh bin dch. Thu hp (narrowwing): qu trnh lm trn s t kiu d liu c kch thc ln hn sang kiu c kch thc nh hn. Kiu bin i ny c th lm mt thng tin nh v d trn. Chuyn kiu loi ny khng th thc hin ngm nh bi trnh bin dch, ngi dng phi thc hin chuyn kiu tng minh.

2.2.2. Cc ton t
Java cung cp cc dng ton t sau: Ton t s hc Ton t bit Ton t quan h Ton t logic Ton t iu kin Ton t gn 2.2.2.1.Ton t s hc Cc ton hng ca cc ton t s hc phi dng s. Cc ton hng kiu boolean khng s dng c, song cc ton hng k t cho php s dng loi ton t ny. Mt vi kiu ton t c lit k trong bng di y. Ton t + * / % ++ -1 M t Cng. Tr v gi tr tng hai ton hng Tr Tr v kt qu ca php tr. Nhn Tr v gi tr l tch hai ton hng. Chia Tr v gi tr l thng ca php chia Php ly modul Gi tr tr v l phn d ca php chia Tng dn Tng gi tr ca bin ln 1. V d a++ tng ng vi a = a + 1 Gim dn Gim gi tr ca bin 1 n v. V d a-- tng ng vi a = a -

Trang 12

Chng 1: Nhp mn Java


+= Cng v gn gi tr Cng cc gi tr ca ton hng bn tri vo ton hng bn phi v gn gi tr tr v vo ton hng bn tri. V d c += a tng ng c =c+a Tr v gn gi tr Tr cc gi tr ca ton hng bn tri vo ton ton hng bn phi v gn gi tr tr v vo ton hng bn tri. V d c -= a tng ng vi c = c - a Nhn v gn Nhn cc gi tr ca ton hng bn tri vi ton ton hng bn phi v gn gi tr tr v vo ton hng bn tri. V d c *= a tng ng vi c = c*a Chia v gn Chia gi tr ca ton hng bn tri cho ton ton hng bn phi v gn gi tr tr v vo ton hng bn tri. V d c /= a tng ng vi c = c/a Ly s d v gn Chia gi tr ca ton hng bn tri cho ton ton hng bn phi v gn gi tr s d vo ton hng bn tri. V d c %= a tng ng vi c = c%a

-=

*=

/=

%=

2.2.2.2.Ton t Bit Cc ton t dng bit cho php ta thao tc trn tng bit ring bit trong cc kiu d liu nguyn thu. Ton t ~ & M t Ph nh bit (NOT) Tr v gi tr ph nh ca mt bt. Ton t AND bt Tr v gi tr l 1 nu cc ton hng l 1 v 0 trong cc trng hp khc Ton t OR bt Tr v gi tr l 1 nu mt trong cc ton hng l 1 v 0 trong cc trng hp khc. Ton t Exclusive OR bt Tr v gi tr l 1 nu ch mt trong cc ton hng l 1 v tr v 0 trong cc trng hp khc.

Ti liu tham kho Java

>>

Dch sang phi bt Chuyn ton b cc bt cu mt s sang phi mt v tr, gi nguyn du ca s m. Ton hng bn tri l s b dch cn s bn phi ch s v tr m cc bt cn dch. Dch sang tri bt Chuyn ton b cc bt cu mt s sang tri mt v tr, gi nguyn du cu s m. Ton hng bn tri l s b dch cn s bn phi ch s v tr m cc bt cn dch.

<<

2.2.2.3.Cc ton t quan h Cc ton t quan h kim tra mi quan h gia hai ton hng. Kt qu ca mt biu thc c dng cc ton t quan h l nhng gi tr Boolean (logic ng hoc sai). Cc ton t quan h c s dng trong cc cu trc iu khin. Ton t == != > M t So snh bng Ton t ny kim tra s tng ng ca hai ton hng So snh khc Kim tra s khc nhau ca hai ton hng Ln hn Kim tra gi tr ca ton hng bn phi ln hn ton hng bn tri hay khng Nh hn Kim tra gi tr ca ton hng bn phi c nh hn ton hng bn tri hay khng Ln hn hoc bng Kim tra gi tr ca ton hng bn phi c ln hn hoc bng ton hng bn tri hay khng Nh hn hoc bng Kim tra gi tr ca ton hng bn phi c nh hn hoc bng ton hng bn tri hay khng

<

>=

<=

2.2.2.4.Cc ton t logic Cc ton t logic lm vic vi cc ton hng Boolean. Ton t && M t V (AND) Tr v mt gi tr ng (True) nu ch khi c hai ton t c gi tr True Hoc (OR) Trang 14

||

Chng 1: Nhp mn Java


Tr v gi tr True nu t nht mt gi tr l True XOR Tr v gi tr True nu v ch nu ch mt trong cc gi tr l True, cc trng hp cn li cho gi tr False (sai) Ton hng n t NOT. Chuyn gi tr t True sang False v ngc li.

2.2.2.5.Cc ton t iu kin Ton t iu kin l mt loi ton t c bit v n bao gm ba thnh phn cu thnh biu thc iu kin. C php:

<biu thc 1> ? <biu thc 2> : <biu thc 3>;


biu thc 1: Biu thc logic. Tr tr v gi tr True hoc False biu thc 2: L gi tr tr v nu <biu thc 1> xc nh l True biu thc 3: L gi tr tr v nu <biu thc 1> xc nh l False 2.2.2.6.Ton t gn Ton t gn (=) dng gn mt gi tr vo mt bin v c th gn nhiu gi tr cho nhiu bin cng mt lc. V d on lnh sau gn mt gi tr cho bin var v gi tr ny li c gn cho nhiu bin trn mt dng lnh n.

int var = 20; int p,q,r,s; p=q=r=s=var;


Dng lnh cui cng c thc hin t phi qua tri. u tin gi tr bin var c gn cho s, sau gi tr ca s c gn cho r v c tip nh vy. 2.2.2.7.Th t u tin ca cc ton t Cc biu thc c vit ra ni chung gm nhiu ton t. Th t u tin quyt nh trt t thc hin cc ton t trn cc biu thc. Bng di y lit k th t thc hin cc ton t trong Java Th t 1. 2. Ton t Cc ton t n nh +,-,++,-Cc ton t s hc v cc ton t dch nh *,/,+,-,<<,>>

3. Cc ton t quan h nh >,<,>=,<=,= =,!= 4. Cc ton t logic v Bit nh &&,||,&,|,^ 5. Cc ton t gn nh =,*=,/=,+=,-= Thay i th t u tin thay i th t u tin trn mt biu thc, bn c th s dng du ngoc n Ti liu tham kho Java

(): Phn c gii hn trong ngoc n c thc hin trc. Nu dng nhiu ngoc n lng nhau th ton t nm trong ngoc n pha trong s thc thi trc, sau n cc vng pha ngoi. Trong phm vi mt cp ngoc n th quy tc th t u tin vn gi nguyn tc dng.

CU HI V BI TP CHNG 2
1.Trong cc tn sau, tn no c th dng lm tn bin trong java: _123 a$ 1abc class vi du $123 2.Mun lu gi mt bin s nguyn dng m c gi tr ln nht l mt triu th dng kiu d liu no l tit kim b nh nht? 3.Mun lu gi mt bin s nguyn m m c gi tr nh nht l m mt t th dng kiu d liu no l tit kim b nh nht? 4.Cho bit kt qu thu c khi thc hin on chng trnh sau?

class me{ public static void main(String args[]){ int sales = 820; int profit = 200; System.out.println((sale +profit)/10*5); } }

Trang 16

You might also like