slide baocao nlnnlt

64
CÁC THÀNH VIÊN NHÓM 6 1. Đỗ Ngọc Anh (C) 2. Lâm Văn Ân 3. Nguyễn Hữu Hải 5. Trần Văn Minh 6. Nguyễn Minh Quang 7. Trần Đình Nam 4. Nguyễn Minh Hưng Nhóm 6 - Lớp K13M CNTT

Upload: anh-hoi

Post on 17-Nov-2015

12 views

Category:

Documents


3 download

DESCRIPTION

Báo cáo bài tập lớn

TRANSCRIPT

  • CC THNH VIN NHM 61. Ngc Anh (C)2. Lm Vn n3. Nguyn Hu Hi5. Trn Vn Minh6. Nguyn Minh Quang7. Trn nh Nam4. Nguyn Minh HngNhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • BINhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Static typing and Dynamic typing

    Basic type

    NonBasic type/Programer - defined

    Reference Counting

    NGUYN L CC NGN NG LP TRNH

    Garbage Collection

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • TYPE (KIU)- Trong gii hn mn hc, nhc n kiu ta hiu l kiu ca d liu.

    -Ngi ta s dng thut ng i tng d liu (TDL) ch mt nhm ca mt hoc nhiu mu d liu trong my tnh o.

    - Kiu d liu l mt tp hp cc TDL v tp hp cc php ton thao tc trn cc TDL .Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • Static typing and Dynamic typing (Kim tra kiu tnh v kim tra kiu ng)Kim tra kiu l kim tra xem kiu thc nhn c ca cc i s trong mt php ton c ng vi kiu d liu m cc i s cn c hay khng.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Static typing(Kim tra kiu tnh) - Kim tra kiu tnh l s kim tra kiu c thc hin trong qu trnh dch chng trnh.

    - Theo nguyn tc kim tra kiu tnh, thng tin v kiu ca TDL phi c cung cp cho b dch.

    - Thng tin ny mt phn c cung cp bi php khai bo ca ngi lp trnh v mt phn bi ngn ng. Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Static typing(Kim tra kiu tnh)u im: Do php kim tra kiu tnh kim tra tt c cc php ton c th xut hin trong bt k mt lnh no ca chng trnh, tt c cc nhnh ca chng trnh u c kim tra nn khng th c s st li v kiu. Mt khc thng tin v kiu khng gn vi TDL ti thi im thc hin chng trnh nn tit kim c b nh v tng tc thc hin chng trnh. Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Static typing(Kim tra kiu tnh)Nhc im:

    Yu im ch yu ca kim tra kiu tnh l chng trnh khng mm do, ngi lp trnh lun phi lo lng v vic s dng bin khng ng kiu.Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Dynamic typing(Kim tra kiu ng) Kim tra kiu ng l kim tra kiu c thc hin trong khi thc hin chng trnh. Thng thng kim tra kiu ng c thc hin mt cch tc th trc khi thc hin mt php ton. Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Dynamic typing(Kim tra kiu ng)Phng php thc hin: - kim tra kiu ng ngi ta phi lu tr thng tin v kiu ca mi mt TDL cng vi TDL .

    - Trc khi thc hin mt php ton thng tin v kiu ca mi mt i s c kim tra. Nu kiu ca cc i s l ng th php ton s c thc hin v kiu ca kt qu s c ghi li dng kim tra cho cc php ton sau, ngc li s c mt thng bo li v kiu . Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Dynamic typing(Kim tra kiu ng)u im: u im ch yu ca kim tra kiu ng l tnh mm do trong khi vit chng trnh: khng yu cu khai bo kiu v kiu ca TDL c th thay i trong qu trnh thc hin chng trnh. Ngi lp trnh khng phi lo lng v kiu d liu. Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Dynamic typing(Kim tra kiu ng)Nhc im: C th b st li v kiu. Bi v vic kim tra ng ch kim tra ti thi im thc hin php ton do cc php ton nm trong nhnh chng trnh khng c thc hin th s khng c kim tra. Bt k mt nhnh cha c kim tra no u c th cha cc i s c li v kiu v do cc li ny c th xut hin ti thi im sau . Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • import java.util.Scanner;public class StaticTyping {public StaticTyping() {constructor stub}public static void main(String[] args) {stubint a,b;String x;Scanner sc = new Scanner(System.in);System.out.println("Nhp s a : "); a = sc.nextInt(); System.out.println("Nhp s b : "); b = sc.nextInt();

    Nhm 6 - Lp K13M CNTT if(a>b) { //x = a + b; //System.out.println("x = "+x); } else { x = a + "titi"; //System.out.println("x = "+a+"titi"); }}}

    Nhm 6 - Lp K13M CNTT

  • Basic Type(Kiu d liu c bn)

    Nhm 6 - Lp K13M CNTTS nguynS thc

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s

    Nhm 6 - Lp K13M CNTTHu ht cc ngn ng lp trnh u c cc kiu d liu s, nhng cc chi tit ca s c t v php ci t cc kiu ny c nhiu im khc nhau. Kiu s nguyn v kiu s thc l ph bin nht bi v chng da mt cch trc tip vo phn cng ca my tnh.

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s nguyn

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s nguyn

    Nhm 6 - Lp K13M CNTTS ci t:

    Kiu d liu nguyn hu ht c ci t mt cch trc tip bng cch dng s biu din b nh c xc nh bi phn cng v tp hp cc php tnh s hc, cc php ton quan h nguyn thu trong phn cng cho cc s nguyn. Thng thng s biu din ny s dng mt t trong b nh hoc mt dy cc bytes lu tr mt s nguyn.

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s thc

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s thc

    Nhm 6 - Lp K13M CNTTS ci t:

    S biu din b nh cho kiu d liu thc du chm ng da trn c s biu din phn cng trong mt nh c chia thnh mt phn nh tr (mantissa) v mt s m (exponent).

    Cc php tnh s hc v cc php ton quan h trn kiu s thc c h tr bi phn cng. Cc php ton khc phi c ngn ng ci t nh l cc chng trnh con.

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu s thc

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu logic

    Nhm 6 - Lp K13M CNTTKiu d liu logic gm cc TDL c mt trong hai gi tr ng hoc sai.

    Cc php ton ph bin trn kiu logic gm c:

    Nhm 6 - Lp K13M CNTT

  • Kiu d liu K t (Char)

    Nhm 6 - Lp K13M CNTTKiu k t l mt lit k c nh ngha bi ngn ng tng ng vi mt tp hp k t chun c cho bi phn cng v h iu hnh nh tp cc k t ASCII (8-bits) chng hn.

    Bng m Unicode (16 bit) c a vo Java, C#

    Cc php ton trn d liu k t bao gm: cc php ton quan h, php gn, v i khi c php kim tra xem mt k t c thuc mt lp c bit "ch ci", "ch s" hoc lp k t xc nh no .

    Nhm 6 - Lp K13M CNTT

  • NonBasic type/Programer - defined (Kiu d liu khng c bnDo ngi lp trnh nh ngha)

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Enumerations (D liu kiu lit k)

    Nhm 6 - Lp K13M CNTTNgi lp trnh nh ngha kiu lit k bng cch lit k ra mt danh sch cc tn trc kin thng qua s khai bo. Cc tn trc kin trong danh sch l cc gi tr ca kiu v th t ca chng cng c xc nh nh th t chng xut hin trong danh sch.

    V d trong Java:public enum Day {hai, ba, bon, nam, sau, bay, cn}

    Nhm 6 - Lp K13M CNTT

  • Enumerations (D liu kiu lit k)

    Nhm 6 - Lp K13M CNTTswitch (day) { case hai: return "Th 2"; case ba: return "Th 3"; case bon: return "Th 4"; case nam: return "Th 5"; case sau: return "Th 6"; case bay: return "Th 7"; case cn: return "Ch nht"; default: return null; }

    Nhm 6 - Lp K13M CNTT

  • Enumerations (D liu kiu lit k)

    Nhm 6 - Lp K13M CNTTLi ch ca vic s dng kiu lit k:

    Vic s dng kiu lit k lm cho chng trnh sng sa, trc quan, ngi lp trnh khng cn phi nh ngha ca gi tr s v do vy chng trnh s c chnh xc cao hn. Ni cch khc, kiu lit k lm tng tnh d c, tnh d vit v tin cy ca ngn ng.

    Nhm 6 - Lp K13M CNTT

  • Pointer (D liu kiu con tr)

    Nhm 6 - Lp K13M CNTTD liu kiu con tr l mt TDL s cp cha a ch ca khi nh c cp pht. Ngi lp trnh s dng nh c cp pht thng qua bin con tr.

    Nhm 6 - Lp K13M CNTT

  • Pointer (D liu kiu con tr)

    Nhm 6 - Lp K13M CNTTCc php ton:

    Php ton cp pht nh ng: Php ton ny dng cp pht nh cho i tng d liu mi v tr a ch ca nh v trong bin con tr. Trong Pascal th php ton ny c tn l NEW. V d: NEW(p).

    Php ton truy xut nh c cp pht ng: truy xut n gi tr d liu lu trong khi nh cp pht ng ta phi s dng a ch ca khi nh thng qua tn con tr (v khi nh ny khng c tn). V d q^[5] l phn t th 5 ca vct Vect c tr bi q.

    Php ton thu hi nh c cp pht ng: Php ton ny cho php gii phng nh cp pht. Trong Pascal, dng php ton DISPOSE.

    Nhm 6 - Lp K13M CNTT

  • Pointer (D liu kiu con tr)

    Nhm 6 - Lp K13M CNTTType Vect = ARRAY[1..10] of Integer; {Lc ny b nh cho Vect cha c cp pht} VAR p: ^Vect; {Khai bo p l mt bin con tr cha a ch ca khi nh lu tr TDL thuc kiu vct Vect. Khi dch n y th nh cho p s c cp pht} Begin NEW(p); {Cp pht nh cho vct v tr a ch ca nh ny cho bin con tr p (hay cn ni p tr ti khi nh ny)} p^[5] := 20; {Truy xut n phn t th 5 ca vct} writeln(p^[5]); Dispose(p); {Gii phng nh cp cho vct} End.

    Nhm 6 - Lp K13M CNTT

  • Array (Mng)Mng 1 chiu (cn gi l vc t)Mng mt chiu l mt CTDL bao gm mt s c nh cc phn t c kiu ging nhau c t chc thnh mt dy tun t cc phn t. Nh vy mng mt chiu l mt CTDL c kch thc c nh v ng nht.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Mng 1 chiu (cn gi l vc t)Cc thuc tnh ca mng mt chiu l: - S lng cc phn t, lun c ch r bng cch cho tp ch s. Tp ch s ny thng thng c cho bi mt min con cc s nguyn.- Kiu d liu ca mi mt phn t, thng c vit r trong khai bo. - Ch s c s dng la chn mi mt phn t. Nu tp ch s c cho bi mt min con ca tp cc s nguyn th s nguyn u tin ch nh phn t u tin s nguyn th 2 ch nh phn t th 2 ...Nu tp ch s l mt lit k th gi tr u tin trong lit k l ch s ca phn t u tin. Nu ngn ng ch nh r s lng cc phn t th 0 l ch s ca phn t u tin.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Mng 1 chiu (cn gi l vc t)V d: char s[] = new char[100];Khai bo mng mt chiu s c 100 phn t l cc k t.Cc thnh phn ca mng: s[0] n s[99].

    truy xut ti phn t th i ca s, ta s dng c php: s[i]Ly s phn t ca s ta dng c php: s.lengthKhi to gi tr ban u ca mng:Char s[] = {a,b,c,d,e,f}

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String(Chui k t) Chui k t l cu trc d liu bao gm mt dy cc k t. Nh vy, kiu chui k t l mt kiu ng nht, cn v kch thc th c th c nh hoc thay i ty theo ngn ng. Kiu d liu chui k t l mt kiu quan trng m hu ht cc ngn ng u c.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String(Chui k t) Cc cch khai bo trong Java:

    public static void main(String a[]){

    String objStr_01 = "This is a string object"; String objStr_02 = new String("This is also string object"); char[] arrChar = {'V','N','L','I','V','E','S'}; String objStr_03 = new String(arrChar); String objStr_04 = objStr_03 + " This is another String object"; System.out.println("objStr_01: " + objStr_01); System.out.println("objStr_02: " + objStr_02); System.out.println("objStr_03: " + objStr_03); System.out.println("objStr_04: " + objStr_04); }

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String (Chui k t) c t cc thuc tnh:

    a/ di c khai bo c nh: Chui k t c th c di (kch thc) c nh c khai bo trong chng trnh.y l k thut c bn c dng trong COBOL

    b/ di thay i trong mt gii hn c khai bo: Chui k t c th c di cc i c khai bo trc trong chng trnh nhng gi tr thc ca i tng d liu c lu tr c th l chui c di ngn hn, thm ch c th l chui rng. y l k thut c dng trong PL/1 (v c trong Turbo Pascal).

    c/ di khng gii hn: Chui k t c th c di bt k v di c th thay i mt cch ng thng qua qu trnh thc hin. y l k thut c dng trong SNOBOL4.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String (Chui k t) Cc php ton:

    a/ Vit hoa mt chui

    public class StringUpperCase { public static void main(String[] args) { String objStr = "vnlives.net"; System.out.println("objStr: " + objStr.toUpperCase());

    }}

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String (Chui k t) Cc php ton:

    b/ Vit thng mt chui

    public class StringLowerCase { public static void main(String[] args) { String objStr = "VNLIVES.NET"; System.out.println("objStr: " + objStr.toUpperCase());

    }}

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • String (Chui k t) Cc php ton:

    c/ m tng s k t ca chui

    public class StringLength { public static void main(String[] args) { String objStr = "VNLIVES.NET"; System.out.println("objStr length: " + objStr.length());

    }}

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Record (Bn ghi)

    Bn ghi l mt CTDL bao gm mt s c nh cc phn t c kiu khc nhau. Nh vy, bn ghi l mt CTDL c kch thc c nh v khng ng nht. Cc phn t ca bn ghi c gi l cc trng. Khai bo bn ghi trong Java:

    class Recorder {String Ma;String hoten;int tuoi;float luong;}

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Record (Bn ghi)

    Cc thuc tnh ca mt bn ghi phi c ch r trong php khai bo, chng bao gm: 1. S lng cc phn t. 2. Kiu d liu ca cc phn t (Cc phn t c th c kiu khc nhau). 3. Mi phn t c cho bi tn phn t (tn trng).

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Record (Bn ghi)Cc php ton thc hin trn bn ghi:

    1. Php la chn mt phn t l php ton c bn cu bn ghi. Php ton ny c thc hin bng cch ch ra tn trc kin ca phn t. V d: Nhan_vien.Ma; (Ly ra gi tr ca trng Ma trong bn ghi hay ly m ca nhn vin)

    2. Php gn V d:Nhan_vien.hoten = "Nguyen van A";Gn gi tr ca trng hoten trong bn ghi bng Nguyen van A

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Record (Bn ghi)Cc php ton thc hin trn bn ghi:

    1. Php la chn mt phn t l php ton c bn cu bn ghi. Php ton ny c thc hin bng cch ch ra tn trc kin ca phn t. V d: Nhan_vien.Ma; (Ly ra gi tr ca trng Ma trong bn ghi hay ly m ca nhn vin)

    2. Php gn V d:Nhan_vien.hoten = "Nguyen van A";Gn gi tr ca trng hoten trong bn ghi bng Nguyen van A

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Qun l b nh v dn rcJava qun l b nh trong 1 vng nh gi l vng HEAP. qun l Heap, b nh c theo di qua 2 danh sch l : Danh sch cc vng nh cha s dng. Danh sch cc vng cp.Java s dng hai heap ring bit cho cp pht vng nh : heap tnh.heap ng.Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • Quy trnh dn rc chia ra nh sau :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 ri. Nhng khi i hi b nh cp bch th trnh dn rc s c kch hot ngay.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Cc bc thc hin trong c ch cp b nh :Nhn yu cu cp b nh.if (Free-Block list ) cp b nh cho yu cu (First-fit) else if (my rnh) thc thi gom rc else ng dng phi gi tng minh tc v gom rc. Trnh gom rc c n nh u tin rt thp nu JVM rnh th mi gi n n. Gi tng minh c ngha chp nhn ng dng ny tm dng ch gom rc.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • C ch gom rc (ch gom rc Dynamic heap)Xem i tng no khng cn dng. Trnh dn rc gi phng thc finalize thu ti nguyn ca i tng 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 thiGi trnh dn rc th gom rc.Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Gii thiu v Reference CountingGarbage CollectionNhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Ging nhauu qun l b nh, u c c ch m cc tham chiu tr ti i tng trong b nh.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • C ch hot ngGarbage Collection (GC) l c ch t ng chy ngm tm nhng i tng d liu khng cn s dng na v gii phng chng bi chng trnh ang chy.Reference Counting (RC) l c ch t ng m tham chiu n i tng trong b nh.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • GC hotng nhth no ?S dng cchm?mii tng c mt sm cc tham chiu tr ti.gii phngi tng khi sm = 0. Gii phng cci tngchtkim tra tt c cc tham chiu.nh du cci tng cnc tham chiugii phng cci tng khngc tham chiu

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

  • GC hotng nhth no ?Trong java, cc object c to ra v lu vo mt vng nh gi lHEAP v s c Garbage Collection qun l theo mt cu trc hnh cy. Garbage Collection s thc hin cng vic ca n khi vng nh Heap ny full.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • RC hotng nhth no ?S dng cchm?mii tng c mt sm cc tham chiu tr ti.Khi bin m tham chiu bng 0, vng nh dnh cho i tng c th c gii phng.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Quan h gia RC v GCTrong vic thu thp rc ca GC th n s gp vn l tm kim rc u ?. Mt i tng c coi l rc khi khng c tham chiu ti i tng . Nhng lm th no chng ta bit l khng c tham chiu ti n ?JVM a ra cch gii quyt l theo di tng i tng trong tng s cc tham chiu n i tng . C ngha l n s phi thm mt reference count cho tng i tng v JVM s cp nht cc reference count .

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • V d 1:V d: Khi khai bo: Object p = new Integer (57);Ta to mt th hin mi ca lp Integer v ch c bin p l i tng. Nh vy s tham chiu ca n s l mt.Tip theo ta s vit thm l Object p = new Integer (57);Object q = p;Th trong trng hp ny c p,q u tham chiu n cng 1 i tng vy nn tham chiu ca n l 2.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • C ch chy ca JVM v d 1Khi ta tin hnh gn p=q; th my o JVM s thc hin nh sau :

    if (p != q){ if (p != null)--p.refCount; p = q; if (p != null)++p.refCount;} Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • V d 2V d ta khai bo p v q nh sau : Object p = new Integer (57);Object q = new Integer (99);Nh vy ta to ra 2 i tng kiu integer v chng u c chung 1 th hin.Gi s chng ta gn q=p, s dng on code pha trn th cho thy rng sau khi gn th C p v q u tham chiu n cng 1 i tng nn reference count ca q s l 2. V s lng tham chiu trn p ch ra l m tham chiu ca n bng 0 v n l rc.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Li th ca vic s dng reference countD dng xc nh i tng no cn s dng v i tng no l rc.Chng ta c th tit kim b nh nu nh chng ta kim tra i tng c reference count ca n = 0 ch ng gi qu trnh thu gom rc tn dng ti a b nh v gim thiu b nh b b trng xung mc thp nht.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • C ch chy ca JVM khi c rc v ta ch ng dn rcTrong v d 2 nu ch ng gi c ch dn rc th Khi gn p=q th my o JVM s thc hin nh sau :

    if (p != q){ if (p != null)if (--p.refCount == 0) heap.release (p); p = q; if (p != null)++p.refCount;}Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • u im ca GC lGip lp trnh vin khng phi x l gii phng b nh khi lp trnh (vn gy ra li trn cc ngn ng khng s dng Garbage Collector), gim thiu Memory leaks.Bo m tnh ton vn ca chng trnh java, GC cng l mt phn quan trng trong kh nng bo mt v tnh an ton ca JVM.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Nhc im ca GC lKhng cho php ngi lp trnh xc nh c chnh xc thi im object b hy khi b nh.nh hng ti hiu nng chng trnh Trong phng thc finalize() th ngi lp trnh nn ch ng ci t mt s thao tc gii phng, dn dp vng nh cp pht cho cc i tng d liu s gip cho kim sot tt qu trnh hy i tng.

    Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

  • Chn thnh cm n Thy v cc bn lng nghe!Nhm 6 - Lp K13M CNTT

    Nhm 6 - Lp K13M CNTT

    *

    *

    *

    *

    *

    *