java(1), Książki
[ Pobierz całość w formacie PDF ]
Programowaniewj¦zyku
Java
AndrzejZoła
2004
Spistre±ci
Wst¦p 1
1Charakterystykaj¦zyka
Java
1
1.1Przeno±no±¢................................... 1
1.2Obiektowo±¢................................... 2
1.3Bezpiecze«stwo................................. 3
1.3.1Bezpiecze«stwokonstrukcjij¦zykowych................ 3
1.3.2Mechanizmyochronyinformacjiwprogramach
Javy
......... 4
1.4Sieciowo±¢.................................... 5
1.5Otwarto±¢.................................... 5
2Wprowadzeniedoprogramowaniaobiektowego 6
2.1Wielokrotnewykorzystanieklas.Kompozycjaidziedziczenie........ 6
2.2Klasyabstrakcyjneipolimorfizm....................... 7
3ABCj¦zykaJava 8
3.1Pierwszyprogram................................ 8
3.2Typypodstawowe................................ 12
3.3Operatory.................................... 13
3.4Uwaganaobiekty................................ 14
4Sterowaniewykonaniem 15
4.1Instrukcjesteruj¡ce............................... 15
4.1.1
if-else
.................................. 15
4.1.2p¦tla
for
................................. 16
4.1.3
while
................................... 17
4.1.4
do-while
................................. 17
4.1.5instrukcje:
break
i
continue
....................... 18
4.1.6instrukcja
switch
............................ 18
4.2Zakresy..................................... 19
5KlasyiobiektywJavie 20
5.1Definiowanieklas................................ 20
5.2Modyfikatory.................................. 21
5.3Własno±cimetod................................ 21
5.4Konstruktory.................................. 23
5.5Tworzenieobiektu............................... 23
5.6Przeci¡»anieobiektu.............................. 26
5.7Klasywewn¦trzne................................ 26
5.8Garbagecollector................................ 27
6Dziedziczenie 27
6.1Słówkilaopakietach.............................. 27
6.2Roladziedziczeniawprogramowaniuobiektowym.............. 28
6.3Wła±ciwo±ciklaspochodnych......................... 30
6.4Napocz¡tkubył
Object
............................ 33
6.5Abstrakcja.................................... 36
6.6Interfejsy,czylisposóbnadziedziczeniewielobazowe............. 38
6.7Interfejsyakonfliktynazw........................... 40
6.8Rozszerzanieinterfejsów............................ 41
7Obsługawej±ciaiwyj±cia 42
7.1Obsługawyj¡tków............................... 43
7.1.1Wyrzucaniewyj¡tków......................... 44
7.1.2Przechwytywaniewyj¡tków...................... 44
7.1.3Lista
throws
............................... 45
7.2Klasa
File
.................................... 47
7.3Strumienie.................................... 47
7.3.1Typy
InputStream
........................... 47
7.3.2Typy
OutputStream
........................... 48
7.3.3Strumienietekstowe.......................... 49
7.3.4Buforowanie............................... 50
7.3.5Ł¡czeniestrumieni........................... 50
7.4Czytaniezestandardowegowej±cia...................... 51
7.5
NewJavaIO
.................................. 52
8Wykorzystanieklasbibliotekistandardowej 52
8.1Kontenery.................................... 53
8.1.1Typygeneryczne............................ 54
8.1.2Interfejs
Collection
........................... 54
8.1.3Interfejs
List
.............................. 55
8.1.4Interfejs
Set
............................... 57
8.1.5Interfejs
Map
.............................. 57
9Programowaniegraficzne–Swing 58
9.1Aplikacjeiaplety................................ 59
9.1.1Aplikacje................................. 60
9.1.2Aplety.................................. 61
9.1.3Konwersjaapletudoaplikacji..................... 65
9.2Przegl¡dkomponentówSwing......................... 66
9.2.1Etykieta
JLabel
............................. 66
9.2.2Przycisk
JButton
............................ 67
9.2.3Polaedycyjneitekstowe:
JTextField
i
JTextArea
.......... 68
9.2.4Przewijanie–
JScrollPane
....................... 69
9.2.5Przyciskiwyboru
JToogleButton
ipochodne............. 70
9.2.6Okienkadialogowe–
JOptionPane
................... 72
9.3Mened»eryukładu............................... 73
9.3.1
BorderLayout
.............................. 73
9.3.2
FlowLayout
............................... 74
9.3.3
GridLayout
............................... 74
9.4Zdarzenia.................................... 74
9.4.1Adaptery................................ 75
9.4.2Klasyanonimowe............................ 75
9.5W¡tkiiichwykorzystaniewanimacji..................... 77
9.6Podwójnebuforowanie............................. 79
Zako«czenie 81
Programowaniewj¦zyku
Java
c
2004byA.Zoła
Wst¦p
W1995rokufirmaSunMicrosystemswprowadziłanaryneknowyj¦zykprogramo-
wania–
Jav¦
.Byłtoj¦zykskładniowoopartynaznanymisprawdzonymj¦zykuC++.
Wprzeciwie«stwiejednakdoswegopierwowzoruj¦zyk
Java
niemusiałzachowywa¢kom-
patybilno±ciwstecznejzwcze±niejszymij¦zykami.Dzi¦kitemujestonbardziejspójnyi
„l»ejszy”odC++.
Dzi±
Java
tonietylkoj¦zykprogramowania,alecałyolbrzymizbiórtechnologiiipro-
duktówznimpowi¡zanych.Programynapisanew
Javie
działaj¡naprzeró»nychmaszynach
isystemachpoczynaj¡codtelefonówkomórkowychpoprzezkomputeryPC,ako«cz¡cna
wysokowydajnychserwerach.
1Charakterystykaj¦zyka
Java
J¦zyk
Java
wmomencieswegopowstaniabyłinnyodwi¦kszo±ciznanychistosowanych
j¦zykówprogramowania(dzi±próbujesi¦gona±ladowa¢–np.Microsoftoparłna
Javie
koncepcj¦swojegoj¦zyjaC#).Najwa»niejszymicechamicharakterystycznymi
Javy
s¡([8]):
•przenosno±¢,
•obiektowo±¢,
•bezpiecze«stwo,
•sieciowo±¢,
•otwarto±¢.
Postaramysi¦krótkoprzedstawi¢tecechy.
1.1Przeno±no±¢
Jednymzgłównychzało»e«j¦zyka
Java
byłaprzeno±no±¢programównapisanychw
tymj¦zyku,czylimo»liwo±¢wykonywaniaichnaró»nychmaszynachzró»nymisystema-
mi.Poniewa»jednakró»nekomputeryisystemyoferuj¡programowiinnyinterfejs(
API
)
iwymagaj¡ró»nychpostaciplikówwykonywalnychuzyskanieprzeno±no±ciwsposóbbez-
po±rednibyłoniemo»liwe.
Posłu»onosi¦wi¦cinn¡metod¡–zastosowanotzw.maszyn¦wirtuan¡(
JVM
).Maszy-
nawirtualnajesttoprogramdziałaj¡cynaokre±lonejmaszynieiwokre±lonymsystemie
1
Programowaniewj¦zyku
Java
c
2004byA.Zoła
operacyjnym,którypo±redniczywwykonywaniuprogramówjavowych.Zpunktuwidze-
niatychostatnich,jestonsystememoferuj¡cym–zawszetensam–interfejs.Kodbinarny
klasprzeznaczonydlamaszynywirtualnejnazywmykodembajtowymlubbajtkodem(ang.
bytecode
).
Istniej¡maszynywirtualnedlaszerokiejgamyurz¡dze«komputerowychisystemów.I
dzi¦kitemu
Jav¦
mo»emyspotka¢m.in.wpostacinast¦puj¡cychtechnologii:
•
J2ME
–
Java2MicroEdition
–jesttoniewielkamaszynawirtualnaprzeznaczona
dlaurz¡dze«oograniczonychzasobach,jaknp.telefonykomórkowe,
•aplety–s¡toprogramy
Javy
wbudowanewstronyWWW,s¡one±ci¡ganeiwyko-
nywanewprzegl¡darceinternetowej,
•
J2SE
–
Java2StandardEdition
–jesttoedycjaprzeznaczonadlakomputerówosobi-
stych.Istniej¡wersje
J2SE
dlawszystkichpopularnychsystemówoperacyjnych(jak
Windows,Linux,BSDiwieleinnych),
•
J2EE
–
Java2EnterpriseEdition
–jestto
Java
dlawysokowydajnychserwerów
słu»¡cadobudowyaplikacjirozproszonychzwykorzystaniemtakichtechnologiijak
RMI,CORBAczyEJB.Doskładników
J2EE
zaliczasi¦równie»
ServletyJavy
i
strony
JSP
,czyliaktywnestronyWWWnapisanewj¦zyku
Java
.
Ostatni¡,cho¢nienajmniejwa»n¡cech¡
Javy
wpływaj¡c¡pozytywnienajejprzeno-
±no±¢jestobsługaznakówwstandardzieUnicode.Dziekitemuznikapotrzebamartwienia
si¦oznakinarodowe–Unicodeobsługujewszystkiej¦zyki.Dziejesi¦takdzi¦kitemu,»e
ka»dyznakUnicodezajmuje2anie1bajt.Niestety,ztegopowoduprogramykorzysta-
j¡cezUnicodudziałaj¡niecowolniej.Jednakprzymocachobliczeniowychwspółczesnych
komputerówjesttorawienieodczuwalne.
1.2Obiektowo±¢
Wprzeciwie«stwiedowi¦kszo±cistosowanychobecnieobiektowychj¦zykówprogramo-
waniaw
Javie
obiektowo±¢niezostaładoł¡czonadoistniej¡cegoj¦zyka.
Java
byłaod
pocz¡tkuprojektowanajakoj¦zykobiektowy.Dlategote»w
Javie
niedasi¦programowa¢
nieobiektowo.
Wszystko,zczymmamydoczyniniawprogramiejestobiektemjakiej±klasy(pozakil-
komatypamypodstawowym).Wtensposóbpodej±cieobiektowedoprogramujestniejako
wymuszone,copoprawiamodułowo±¢budowyprogramuiułatwiajegodalsz¡rozbudow¦i
modyfikacj¦.
2
[ Pobierz całość w formacie PDF ]