Tải bản đầy đủ (.pdf) (21 trang)

tiểu luận những điểm mới của java 7

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1011.68 KB, 21 trang )

I HC QUC GIA THÀNH PH H CHÍ MINH
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN















Bài thu hoch môn:
PHƯƠNG PHÁP LUẬN NGHIÊN CỨU KHOA HỌC

 tài: NHỮNG ĐẶC ĐIỂM MỚI TRONG JAVA 7


Thầy hướng dẫn: GS TSKH Hoàng Kim

Hc viên: Lê Triu Ngc
Mã s: 12 11 016
Khóa: 22/2012















Tp H Chí Minh, Tháng 12/2012
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 2
LỜI NÓI ĐẦU
Sáng to là mt trong nhu kin tiên quy xã hi phát trin. Nhng
câu chuyn v sáng tc ghi li, ngun gc ca nhng sn phc làm ra
t s sáng tc ghi nhc vic lan truy cho
tt c m i tìm hiu và hc hi theo. Trong khoa hc, sáng to là mt trong
nhng m   n c i nghiên cu hoc làm vi   c này.
S sáng to s to ra nhiu sn phm mi, phát minh mi và s c áp di
sng xã hi, mang li nhng li ích thit thc trong cuc sng. Trong tin hc, sáng to
càng là yêu cu cp thit và cc k quan trng cho s tn ti và phát trin ca bt k
mt sn phm tin hc nào. S phát trin ca Google, IBM, Youtube hay Facebook là
nhng minh chng hùng hn nht.
Trong khuôn kh bài thu hoch nh này, em xin trình bày mt s nguyên tc
sáng to trong khoa hc nói chung, các nguyên tc sáng tc công ngh
thông tin nói riêng và áp dng các nguyên lý sáng to này trong Java 7.
    c gi li c  n GS -    m,
   n tâm truy t nhng kin thc nn t  n v môn h 

pháp nhiên cu khoa hc trong tin h  kin thc có th vic bài
thu hoch này.
Do kin thc còn hn hp, bài thu hoch có th có nhng sai sót nh nh,
mong thy và các b  bài thu hoch ngày càng hoàn thi
Em xin chân thành cám!
Hc viên thc hi tài
Lê Triu Ngc

Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 3
MỤC LỤC

1. CÁC NGUYÊN LÝ SÁNG TO TRONG KHOA HC: 5
1.1. Nguyên tc phân nh: 5
1.2. Nguyên t 5
1.3. Nguyên tc phm cht cc b: 5
1.4. Nguyên tc phi xng: 5
1.5. Nguyên tc kt hp: 5
1.6. Nguyên tc v 5
1.7. Nguyên t 5
1.8. Nguyên tc phn trng lng: 6
1.9. Nguyên tc gây ng sut s b: 6
1.10. Nguyên tc thc hin s b: 6
1.11.  6
1.12.  6
1.13. c: 6
1.14.  6
1.15.  6
1.16.  7
1.17.  7

1.18. ng c 7
1.19.  7
1.20.  7
1.21. Nguyên t 7
1.22. Nguyên tc bin hi thành li: 8
1.23. Nguyên tc quan h phn hi: 8
1.24. Nguyên tc s dng trung gian: 8
1.25. Nguyên tc t phc v: 8
1.26. Nguyên tc sao chép (copy): 8
1.27. Nguyên t 8
1.28. Thay th s  c hc: 8
1.29. S dng các kt cu khí và lng: 8
1.30. S dng v do và màng mng: 9
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 4
1.31. S dng các vt liu nhiu l: 9
1.32. Nguyên ti màu sc: 9
1.33. Nguyên tng nht: 9
1.34. Nguyên tc phân hy hoc tái sinh các phn 9
1.35. i các thông s hoá lý ci tng: 9
1.36. S dng chuyn pha: 9
1.37. S dng s n nhit: 9
1.38. S dng các cht oxy hoá mnh: 10
1.39.  tr: 10
1.40. S dng các vt liu hp thành (composite): 10
2. CÁC NGUYÊN LÝ SÁNG TẠO TRONG TIN HỌC 10
2.1. Theo phương pháp trực tiếp 10
 Nguyên lý 1 10
 Nguyên lý 2 10
 Nguyên lý 3 10

 Nguyên lý 4 11
 Nguyên lý 5 11
 Nguyên lý 6 11
2.2. Theo phương pháp gián tiếp 11
  sai 11
 Heuristic 12
  nhân to 12
 Mt s ví d áp dn hình trong tin hc 13
3. NHỮNG ĐẶC ĐIỂM MỚI TRONG JAVA 7 15
3.1. Giới thiệu về Java - Lịch sử hình thành và phát triển! 15
a. Gii thiu ngôn ng lp trình Java 15
b. Lch s hình thành ngôn ng Java 15
c. Mt s m ni bt ca ngôn ng lp trình Java 16
d. Các loi ng dng ca Java 17
3.2. Những đặc điểm nổi bật trong Java 7: 17
a. Moularity (Kh  17
b. i ngôn ng) 19
c. Multi Language Virtual Machine: 20
d. Garbage Collector 20
e. n I/O API mi: 21
4. TÀI LỆU THAM KHẢO 21

Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 5
1. CÁC NGUYÊN LÝ SÁNG TẠO TRONG KHOA HỌC
             
c sáng t
     c k thu

      thu         . Nó cung

cp h thng các cách xem xét s vy ca vic tip thu và
 ca thông tin; a chn các cách tip cn thích h
gii quyt v . H thng các nguyên tc sáng to này còn giúp cho chúng ta
xây d        c mt cách khoa hc, sáng to;
góp phn xây dn chc lm qua 40
nguyên t

1. Nguyên tc phân nh
 ng thành các ph c lp.
 ng tr nên tháo lc.
   phân nh ng.
2. Nguyên t 
 Tách ph  n ph  c li tách phn duy nh n thi 
khng.
3. Nguyên tc phm cht cc b
 Chuy      ng bên ngoài) có cu trúc
ng nh  ng nht.
 Các phn khác nhau cng phi có các ch 
 Mi phn c  ng phi  trong nh u kin thích hp nh i vi
công vic.
4. Nguyên tc ph i xng
 Chuy  ng có hình d i x   i xng (nói chung
gim bi xng).
5. Nguyên tc kt hp
 Kt hng nht hoc các ng dùng cho các hong k
cn.
 Kt hp v mt thi gian các hong nht hoc k cn.
6. Nguyên tc v 
 ng thc hin mt s chn s tham gia
cng khác.

7. Nguyên t 
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 6
 M       ng khác và bn thân nó li chi
ng th 
 Mng chuyng xuyên sung khác.
8. Nguyên tc phn trng
 Bù tr trng cng bng cách gn nó vng khác, có
lc nâng.
 Bù tr tr ng c  ng b      
dng các lc th
9. Nguyên tc gây ng su
 Gây ng su  i v    chng li ng sut không cho phép
hoc không mong mun khng làm vic (hoc gây  khi
làm vic s dùng c li).
10. Nguyên tc thc hi
 Thc hi c s  i cn có, hoàn toàn hoc tng ph i v i
ng.
 Cn sp xc, sao cho chúng có th hong t v trí thun li
nht, không mt thi gian dch chuyn.
11. Nguyên tc d phòng
    tin cy không ln c  ng bng cách chun b c các
 ng, ng cu, an toàn.
12. Nguyên tng th
   u kin làm vic  không phi nâng lên hay h xu  i
ng.
13. Nguyên tc
            c li (ví d : không
làm nóng mà làm lng).
 Làm phn chuy ng c         ng

 c li ph ng yên thành chuyng.
14. Nguyên tc cu (tròn) hoá
 Chuyn nhng phn thng c  ng thành cong, mt phng thành mt cu,
kt cu hình hp thành kt cu hình cu.
 S d  n.
 Chuyn sang chuy ng quay, s dng lc ly tâm.
15. Nguyên tng
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 7
 C           ng bên ngoài sao cho
chúng tn làm vic.
 ng thành tng phn, có kh  ch chuyn vi nhau.
16. Nguyên tc gi 
 N    c 100% hiu qu cn thit, nên nh  c nhiu
 tr    gi

17. Nguyên tc chuyn sang chiu khác
 Nh     ng (hay sp x    ng (mt
chiu) s c khc phc nng kh n trên mt phng
(hai chi   nh     n chuy ng (hay sp xp)
ng trên mt phng s n hóa khi chuyn sang không gian
(ba chiu).
 Chuy ng có kt cu mt tng thành nhiu tng.
 ng nm nghiêng.
 S dng mt sau ca dic.
 S dng các lung ánh sáng ti din tích bên cnh hoc ti mt sau ca din
c.
18. Nguyên tc s d c
 ng.
 N n s ng.

 S dng tn s cng.
 Thay vì dùng các b c. dùng các b n.
 S dng siêu âm kt hp vn t.
19. Nguyên tng theo chu k
 Chuy ng liên t ng theo chu k (xung).
 Ni chu k.
 S dng các khong thi gian gi  thng khác.
20. Nguyên tc liên tng có ích
 Thc hiên công viêc mt cách liên tc (tt c các phn cnng cn luôn
luôn làm vic  ch   ti).
 Khc phc vn hành không ti và trung gian.
 Chuyn chuy ng tnh tin qua li thành chuy ng quay.
21. Nguyên t 
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 8
  n có hi hoc nguy him vi vn tc ln.
   c hiu ng cn thit.
22. Nguyên tc bin hi thành li
 S dng nhng tác nhân có hi (ví d  ng có hi c thu
c hiu ng có li.
 Khc phc tác nhân có hi bng cách kt hp nó vi tác nhân có hi khác.
  ng tác nhân có hn mc nó không còn có hi na.
23. Nguyên tc quan h phn hi
 Thit lp quan h phn hi.
 N  phn h i nó.
24. Nguyên tc s dng trung gian
 S d ng trung gian, chuyn tip.
25. Nguyên tc t phc v
 ng phi t phc v bng cách thc hin các thao tác ph tr, sa cha.
 S dng ph liu, cht th 

26. Nguyên tc sao chép (copy)
 Thay vì s dng nh   c phép, phc tt tin, không tin li
hoc d v, s dng bn sao.
 Thay th  ng hay h   ng bng bn sao quang hc(nh, hình v
vi các t l cn thit.
 Nu không th s dng bn sao quang hc  vùng biu kin (vùng ánh sáng
nhìn th c bng mng), chuyn sang s dng các bn sao hng ngoi
hoc t ngoi.
27. Nguyên t
 t tin bng b ng r có ch
i th).
28. Thay th  c
 Thay th  c b n, quang, nhit, âm hoc mùi v.
 S dng ding, t tr n t ng.
 Chuy   ng yên sang chuy   ng c nh sang thay
i theo thng nht sang có cu trúc nhnh.
 S d ng kt hp vi các ht st t.
29. S dng các kt cu khí và lng
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 9
 Thay cho các phn c  ng  th rn, s dng các cht khí và lng; np
khí, np cht lm không khí, thy phn lc.
30. S dng v do và màng mng
 S dng các v do và mành mng thay cho các kt cu khi.
 ng vng bên ngoài bng các v do và màng mng.
31. S dng các vt liu nhiu l
   ng có nhiu l hoc s dng thêm nhng chi tit nhiu l (ming
m, tm ph
 Ncó nhiu l tm nó bng ch
32. Nguyên ti màu sc

  i màu sc cng bên ngoài.
   trong sut cng hay mng bên ngoài.
  có th   c nh  ng hoc nhng quá trình, s dng các
cht ph gia màu, hunh quang.
 Nu các cht ph c s dng, dùng các nguyên t u.
 S dng các hình v, ký hiu thích hp.
33. Nguyên tng nht
 Nhc, phc làm t cùng mt
vt liu (hoc t vt liu gn v các tính cht) vi vt liu ch tng cho
c.
34. Nguyên tc phân hy hoc tái sinh các phn
 Ph        hoc tr nên không cn thit phi t
phân h c phi bin dng.
 Các phn mt mát c  ng ph c phc hi trc tip trong quá trình
làm vic.
 i các thông s hoá lý cng
  i trng.
  i n   c.
  i d do.
  i nhi, th tích.
36. S dng chuyn pha
 S dng các hi ng ny sinh, trong các quá trình chuyi
th tích, ta hay hp thu nhi
37. S dng s n nhit
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 10
 S dng s n (hay co) nhit ca các vt liu.
 N  n nhit, s dng vi vt liu có các h s n nhit khác nhau.
38. S dng các cht ôxy hóa mnh
   ng bng không khí giàu ôxy.

 Thay không khí giàu ôxy bng chính ôxy.
 Dùng các bc x ng lên không khí hoc ôxy.
 Thay ôxy giàu iôn (hoc ôxy b iôn hóa) bng chính ôxy.
  
  ng b ng trung hòa.
 ng các phn, các cht, ph gia trung hòa.
 Thc hin quá trình trong chân không.
40. S dng các vt liu hp thành (composite)
 Chuyn t các vt li ng nht sang s dng nhng vt liu hp thành
(composite), Hay nói chung s dng các loi vt liu mi.
2. CÁC NGUYÊN LÝ SÁNG TẠO TRONG TIN HỌC
2.1. Theo phương pháp trực tiếp
  c ti  nh trc tic li gii qua mt th tc
tính t   c, h th nh lu      n
  c li gi i v    c gii quyt v trên máy
tính ch là thao tác lp trình hay là s chuyi li gii t ngôn ng bên ngoài
sang các ngôn ng c s dng trong máy tính. Tìm hiu v 
chính là tìm hiu v k thut lp trình trên máy tính.
 thc hin t   c tip, chúng ta cn áp dng các
nguyên lý sau:
Nguyên lý 1
Chuyi d liu bài toán thành d liu cu này có
   liu ca bài toán s c biu din l i dng các bin ca
  nh ca ngôn ng lp trình c th
Nguyên lý 2
Chuy i quá trình tính toán ca bài toán thành các cu trúc ca
u có th mô t và
thc hin da trên ba cn: Cu trúc tun t, cu trúc r nhánh và cu
trúc l
Nguyên lý 3

Biu di            
tính toán theo các biu th    ng nht vi quá trình tính toán
chính xác v mt hình th
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 11
Nguyên lý 4
Biu din các tính toán g  ng cu trúc l    i
quá trình tính toán gu da trên các cu trúc lp vi tham s nh

Nguyên lý 5
     u thành nhng bài toán nh    
i v  -   u có th gii quyt bng cách phân chia thành nhng
v  - bài toán nh   c khá quan trng.
Nguyên lý 6
Biu din các t   ng minh b   u này có
 u thc quy
np trong toán h K thu   c s dng khá nhiu trong lp trình
phn mm.
2.2. Theo phương pháp gián tiếp
  ián ti c s d  i gii chính xác
ca v      p cn ch yu ci t n
 m khác        ng gi     a
máy tính, da vào sc mnh tính toán ca máy tính. Tt nhiên, mt li gii trc
tip bao gi   
Chúng ta có th áp d   
Phương pháp thử – sai
Khi xây dng li gi         i ta
ng da vào 3 nguyên lý sau :
 Nguyên lý vét cn nht, lit kê tt c ng hp
có th xy ra.

 Nguyên lý ngu nhiên: Da vào vic th mt s kh c chn mt cách
ngu nhiên. Kh    i gi   thuc rt nhiu vào chi c
chn ngu nhiên.
        c áp dng khi chúng ta không th bit
     i gii mà phi xây dng dn li gii qua tng
c mt gi 
 thc hin t  áp th - sai, chúng ta nên áp dng các
nguyên lý sau:
 Nguyên lý vét cn toàn b : Mu   n
t rút ra tng cc cây kim
 Nguyên lý mi bt cá ch bc nhc ln
c mi.
 Nguyên lý gi phc tp ca th và sai : Thu hng hc và trong
khi duy ng thn hóa tu kin chp nhn mng hp.
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 12
 Nguyên lý thu gn không gian tìm kim : Loi b nhng hp hoc nhóm
ng hp chc chn không dn li gii.
      n : Nhánh có cha qu phi nng
ca qu.
m duy nht c sai là không cn phi hc mà t
             t nhi c
m   n hiu qu   - gii quyt v c
m ch yu c  
 S phép th- sai nhiu nên mt nhiu trí lc, thi gian, vt cht và có th là sinh
mng ci.
 Công su   ng (s         th  gii
quyt v  thp.
 Tuy s phép th nhic h có
i vc mt cách khách quan.

         t c      nh
  n li gii.
Phương pháp Heuristic
    sai có mt s  m, khi gii quyt v 
bng cách dùng mt s ng phép th quá ln, th c kt qu có
khi khá lâu không chp nh      
gin và gn gi v         c nhng li gii
     ng hp áp dng. Các thut gi  c xây
dng da trên mt s nguyên lý r
cc bp th tt s thut gii khá thú
v và có rt nhiu ng dng trong thc tin.
 thc hin t   ng các nguyên lý sau:
 Nguyên lý leo núi: Mu      c sau ph   c
c.
 Nguyên lý chung: Ch   n vng nht trong s nh   
bit.
Phương pháp trí tuệ nhân tạo
  u da trên m
bn là trí thông minh c gii bài toán, máy tính ch 
trò th nhân to li da trên trí thông
minh ca máy tính. Trong nh    i ta s   
tính trí thông minh nhân to giúp máy tính b c mt phn kh  
lui. T p mt v, máy tính s da trên nhu
  t  i quyt v .
 c máy hc, các hình thc hc có th  
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 13
 Hc vt.
 Hc bng cách ch dn.
 Hc bng qui np.

 Hc b .
 Hc da trên gii thích.
 Hc da trên tình hung.
 Khám phá hay hc không giám sát.
Các k thu c áp d  
 Khai khoáng d liu.
 M 
 Thut gii di truyn.
Một số ví dụ áp dụng điển hình trong tin học:
Áp dụng nguyên tắc “tách khỏi”:
Chúng ta thy r    u tiên ca th h 8086, 8088 hay
thm chí 80286 và mt phn th h 80386 thì các b phc gn
ch chính, mun thay th rng là phi thay c bo
m        c rn phm. Khi xut hin
các máy tính th h sau 80386, 80486 và máy tính ngày nay, các b phn CPU,
 c tách riêng khi bo m    i dùng rt d thay th
hay nâng cp khi cn.
Trong các ngôn ng lp trình ngày nay, mt ngôn ng l ng
tách ra các ch    ng riêng bi     ng COM,
   i lp trình khi nào c   ng nào thì ch cn
      s dng và th  i lp trình có th 
c có thêm nhi ti
ng mi.
Áp dụng nguyên tắc kết hợp:
  c phn mm, ngày nay mt d án khó có th dùng mt
ngôn ng lp trình thc hin t n cui mà phi có s kt hp nhiu phn
vi nhau. Chng h t d án v  d liu, phn d lic
to và qun lý bng MySQL, SQL Server hay Oracle còn phn giao ding
c lp trình bng mt trong các ngôn ng Visual Basic, .Net, Delphi hay
  m chí có th kt hp các ngôn ng n thit k giao

di ng c thit k bi Crysral Report hay JReport.
Áp dụng nguyên tắc chứa trong:
Trong mã ngun phn mm tin hc, ma nhiu
       i cha nh   
khác.
Áp dụng nguyên tắc dự phòng:
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 14
Tr  c phn cng, ngày nay trong CMOS luôn luôn có chc
i s dt nhi t Cpu ti mc
 n pháp d phòng tt.
Ngoài ra, trong h  và
Restore d li      i h u hành nu gng
h  ng h u hành. Hin ti các h      
hay h   c hi d liu.
Áp dụng nguyên tắc sao chép:
c phn cng và mng có mt s phn mi hc
mng ch cn mt máy tính vn có th thc t c vi  t và qun tr
m    n mm gi lp (simulator) các thit b router hay các phn
mm VM (Virtual Machine) gi lp mt máy tính thành nhiu máy tính.
Áp dụng nguyên tắc đảo ngược:
    th, khi yêu cu ch    th liên thông
  ng gi s c l   th không liên thông và chng minh
u gi s     c li khi yêu cu ch   th
     ng gi s c l th liên thông nhau
và chu gi s ng minh phn chng,
c dùng rt nhic toán và tin hc.
Áp dụng nguyên tắc vượt nhanh:
Trong máy tính, khi chúng ta kh ng máy, máy s kim tra b nh
RAM, chúng ta mu t qua phn kim tra này thì b   

các ngôn ng lp trình, cu trúc r t nhanh qua các
phn không th u kin. Hin ti trong rt nhi    t
lp các b phím tt nh          
i dùng hy nhiu thao tác ni quá lâu.
Áp dụng nguyên tắc thay đổi màu sắc:
Nguyên t  i màu s c áp dng rt nhiu trong các phn
mm, trên các giao din web. Ví d u phi nhng có
   i dùng nh  nh dng ca username thì có thông báo
    i dùng nhp li mt khu nu trùng vi mt khu th nht
thì s hin th  
       t hin h   ng
kèm theo các bii dùng hiu h c thông báo vi tình trng
gì (xem hình 2.1).

Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 15
3. NHỮNG ĐẶC ĐIỂM MỚI TRONG JAVA 7
3.1. Giới thiệu về Java - Lịch sử hình thành và phát triển!
a. Giới thiệu ngôn ngữ lập trình Java
Có th nói rng Java là mt ngôn ng lp trình mc s dng
rt rng rãi hin nay trên toàn th gii. Trên thc tc bin không
ch là mt ngôn ng lp trình mà còn là mt platform  mng và công
ngh phát trin  riêng bit. Khi làm vic vi lc s hu
mn ln, có tính m vi mng mã ngun tái s dng khng l luôn
        t bng J ng thc
thi riêng v  o mt, kh n khai trên nhiu h u hành
khác nhau.
Java là mt ngôn ng l    ng (OOP). Khác vi phn
ln ngôn ng l   ng, thay vì biên dch mã ngun thành mã máy
hoc thông dch mã ngun khi ch  c thit k  biên dch mã ngun

        ng thc thi (runtime
environment) chy. B    ng ch   ng ngôn
ng lp trình thông d
 c phát trin t C ++ và C++ là hu du trc tip c
Java k tha cú pháp cng c
     lý cp th
b. Lịch sử hình thành ngôn ngữ Java
 c kh u bi James Gosling và b ng nghip là Patrick
          i Sun
Microsystems, Inc. Ngôn ng    c g      
s      a ông Gosling có trng nhiu lo
         ng thi gian t n bn
Java phát hành mit nhin
và phát trin ngôn ng này. Hin này thì công ty Sun Microsy  
bn quyn và phát tri ng xuyên.

 c to ra vi tiêu chí "Vit (code) mt ln, thc thi kh 
       n mm vit bng
Java có th chy trên mi nn tng (platform) khác nhau thông qua mt môi
ng thc thi v u ki   ng thc thi thích hp h tr nn tng
  ng thc thi ca Sun Microsystems hin h tr Sun Solaris, Linux,
Mac OS, FreeBSD & Windows. Ngoài ra, mt s công ty, t ch
nhân khác ng thc thi Java cho nhng h u hành khác
n nht là IBM Java Platform h tr
Windows, Linux, AIX & z/OS.

Nhng chi tit v ngôn ng, máy o và API cc gi bi Cng
ng Java (do Oracle qu         i nó tr
nên ni ting khi Netscape tuyên b ti hi th     
duyt Navigator ca h s h tr Java. V    c h tr trên hu

ht các trình duy   er(Microsoft), Firefox(Mozilla),


Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 16
 c s dng ch y   ng mng, internet. Sau khi
Oracle mua li công ty c-
h  i qun lý công ngh Java vi cam kt không ng  bi ng
mt cng tham gia và minh bch.

Các phiên b   
 JDK 1.1, 1997-1999
 J2SE 1.2, 1998-1999
 J2SE 1.3, 2000-2001
 J2SE 1.4, 2002-2003
 J2SE 5, 2004
 J2SE 6 (còn g c công b 
 JDK 6.18, 2010
 Java SE 7 (còn gi là Dolphin), 2011. Ti th    n
mi nht.
c. Một số đặc điểm nổi bật của ngôn ngữ lập trình Java
 Máy ảo Java (JVM – Java Virtual Machine)
Tt c    n th c thì phc biên dch ra
mã máy. Mã máy ca tng kin trúc CPU ca mi máy tính là khác nhau (tp
lnh mã máy c   
v        c biên dch xong ch có th chy
c trên mt kin trúc CPU c th nài vi CPU Intel chúng ta có th
chy các h    
c biên di dng file
c biên di d

v    c trên Windows mun chc trên
h   ng hn thì phi chnh sa và biên dch li.
Chìa khóa giúp Java gii quyt 2 v  bo m 
xem là mã dch ra không phi là mã thc hi
tp ch th ca trình biên dch Java và ch dnh sang mã máy trong lúc thi hành,
h th  i là máy o Java (JVM  Java Virtual Machine) - 
trình phiên dch mã lnh sang mã Bytecode.
Vic d trình Java sang Bytecode có th 
chy trên nhit d hiu, ch cn có mi JVM cho mi
     y ch cn cho phép JVM chy chúng, Nh
rng, mc dù có nhiu loi máy JVM trên nhi     ch ra
Bytecode là ging nhau trên tt c các h máy.
 Thông dịch:
Java là mt ngôn ng lp trình va biên dch va thông d 
trình ngun vit bng ngôn ng lc biên
dch thành t  c trình thông dch thông dch
thành mã máy.
 Độc lập nền:
M   t bng ngôn ng Java có th chy trên nhiu máy
tính có h n sao  
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 17
t máy o java (Java Virtual Machine). Vit mt ln chy m
run anywhere).
 Hướng đối tượng:
      t ngôn
ng l    ng hoàn toàn. Tt c mi th  cn trong Java
c, thm chí hàm chính ca
m   t b    t bên trong mt
l           tha (multi inheritance)

m i h tr 
k tha. V này s c bàn chi tit trong phn sau.
 Đa nhiệm – đa luồng (MultiTasking – Multithreading):
Java h tr l   ng cho phép nhiu tin trình, tiu
trình có th chy song song cùng mt th i nhau.
 Khả chuyển (portable):
  ng dng vit bng ngôn ng Java ch cn chc trên
máy o Java là có th chc trên bt k máy tính, h u hành nào có máy
o Java. "Vit mt ln, chy m ere).
 Hỗ trợ mạnh cho việc phát triển ứng dụng:
Công ngh Java phát trin mnh m nh  i gia Sun
Microsystem" cung cp nhiu công c  n lp trình phong phú h tr cho
vic phát trin nhiu loi hình ng dng khác nhau c th    
Standard Edition) h tr phát trin nhng ng dng dng client-server;
J2EE (Java 2 Enterprise Edition) h tr phát trin các ng d  i,
J2ME (Java 2 Micro Edition) h tr phát trin các ng dng trên các thit b di
  
d. Các loại ứng dụng của Java
 ng dng console: Không có giao din GUI.
 ng d  ho: Có giao din GUI.
 Applet: Nhúng trong các trang Web.
 Servlet: Các class thc thi phía web server.
 JSP: Các file nhúng mã Java và HTML.
 ng dng EJB, RMI, JMS: Xây dng ng dng bi nhiu thành phn ghép li,
giao tip t xa.

3.2. Những đặc điểm nổi bật trong Java 7:
m:
 Modularity
 Language Changes

 Multi Language Virtual Machine
 Garbage Collector
 New File I/O API

a. Moularity (Khả năng mô đun hóa)
 Sự cần thiết phải mô đun hóa:
c phiên bn 7) phát trin rt nhanh v
vin, lp, hàm tin ích h tr i lp trình d  
Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 18
Mi phiên bi là thêm vào ngày càng nhiu các l n này.
n này gn kt vi nhau.
u này d n s có nh       i khác
  i mi hc java ch cn bit cách s dng ngôn ng, không cn các
n chuyên dng)  a
 n ngày càng phát trin khng l  lãng phí không gian
  n  phiên bn mi xây dng dn  phiên b
      không phi là phiên bn lin k 
n này)
Vd: Phiên bn hin ti Java 6,
Phiên b:
Java 5.5, Java 5
c xây dng t hàm Y() trong phiên bn Java 5
(không ph             ging hoc khác
nhau)  u này gây nên s nhc nhn v các phiên bn s dng.
 Cải tiến trong Java 7:
         t nhn cn dùng
không ct ht (java 6 là phi cài ht)
Qu  c các phiên bn
ph thuc (dependencies)



 Các nguyên lý sáng tạo được áp dụng:
Nguyên tắc phân nhỏ và tách khỏi:
  n ln (phi cài tt c    n riêng (có th cài
t riêng tùy theo nhu cu s dng), Tách nh  n không cn thit ra
kh  n hi  c thi, tit ki
tr và vùng nh.

Nguyên tắc kết hợp:
Khi ta cn gii quyn nhi
kt h s dng.
 

//Yêu cn B phiên bn 2.1
n C phiên bn 1.1





//Lp sample thuc v   c
khai báo là public

//Lp này s c truy cp bi lp khác
trong cùng module A

Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 19


b. Language changes (Thay đổi ngôn ngữ)
Nhi ngôn ng t
th 
 Thay đổi trong cấu trúc switch: cho phép dùng chui trong cu trúc
switch


 Thay đổi trong xử lý biệt lệ: cho phép nhóm các bit l  cùng x lý

Phiên bản cũ Java 7


 Suy luận kiểu: nu khai báo bin là kiu Map<String, Integer> thì khi
tng mu <String, Integer>


Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 20

 Toán tử Elvis: King có NULL hay không, t ng
unboxing mng sang kiu nguyên thy



c. Multi Language Virtual Machine:
    khác () khai
               (Java Virtual
Machine).            DaVinci. 
 
-  

- 
     
-  

Các nguyên lý sáng tạo được áp dụng:
 y nguyên t  c áp dng. Mt máy o JVM có th chy
nhiu ngôn ng khác nhau


d. Garbage Collector
- Garbage Collector mi c gii thiu trong Java 7
- c gi là First Collector Garbage
- B nh c chia thành nhiu khu vc   2 khu vc trong
phiên bn hin hành
- Kh  d  và cung cp l    t cho b nh ng dng
chuyên sâu
- Thc hin   i b   song song hin nay.

Các nguyên lý sáng tạo được áp dụng:
 y nguyên tc chia nh và d c áp dng, b nh
c chia thành nhiu khu vc, s dng mt cách có hiu qu c hin
ng phân mnh nh và kh   t


Những đặc điểm mới trong Java 7
Thầy HD: GS TSKH Hoàng Kiếm Trang 21
e. Thư viện I/O API mới:
Giới hạn của phiên bản hiện hành:
 c bm. Cn phi ki 
b  

        c m rng và phi chy trên tiu
trình chính
 Thao tác polling cn ph  i file
Thư viện mới:
 H thn File mi
 Các cnh báo v File
 Các hong cc
 Bng b quá trình nhp xut
Mt ví d:




4. TÀI LIỆU THAM KHẢO
1. Bài ging môn h    u khoa hc trong tin h ng viên :
  m
2. Gii m        nào? (tp 1, 2, 3) - GS. TSKH Hoàng Kim,
Nhà xut bn giáo dc  2003.
3. n nghiên cu khoa ht bn Khoa Hc và K
Thut  1999.
4. Các th thut (nguyên tc) sáng tn, 2007 - 
5.  n sáng to  Gii quyt v và ra quynh - 
6. Algorit sang ch - Nguyn Chân- -  o
7.  n sáng to - TRIZVIET -

×