További szerzők a könyvben. Fekete-fehér ábrákkal.
Értesítőt kérek a kiadóról
A beállítást mentettük, naponta értesítjük a beérkező friss kiadványokról
A beállítást mentettük, naponta értesítjük a beérkező friss kiadványokról
Előszó
Az előzményekről:
Kezdetben voltak különálló számítógépek, melyek nagyon sok feladatot meg tudtak oldani a 2*2 kiszámításától kezdve a kölcsönadott könyvek nyilvántartásáig, de a rajtuk dolgozó...
Tovább
Előszó
Az előzményekről:
Kezdetben voltak különálló számítógépek, melyek nagyon sok feladatot meg tudtak oldani a 2*2 kiszámításától kezdve a kölcsönadott könyvek nyilvántartásáig, de a rajtuk dolgozó emberek úgy érezték, ez nem elég. Már tudtak levelet írni elektronikus készülékeiken, és ki tudták azt nyomtatni papírra, majd a papírt elküldték barátaiknak, ismerőseiknek és üzletfeleiknek, akik elolvasták, és ismét elektronikus készülékekbe töltötték a bennük rejlő információt. Úgy gondolták, ennél sokkal jobb dolgokat is lehet csinálni, ha a papírt kihagyják az egész játékból. Összekötötték különálló gépeiket mindenféle drótokkal, és így naponta sokkal nagyobb mennyiségű levelet tudtak rázúdítani mit sem sejtő barátaikra... Ez lehet, hogy nem vívta ki az illető barátok és a papírgyárak osztatlan lelkesedését, de az ügyben érintett fáknak nagyon tetszett.
A drótokat addig húzogatták, míg a világ nagy részét össze nem kötötték. Ezt a világot beborító hálót elnevezték Internetnek.
Vissza
Tartalom
I. kötet:
Bevezetés 1
1. Nyolc lap alatt a nyelv körül 4
1.1. Az első alkalmazás 4
1.2. Az első applet 4
1.3. Változók 7
1.4. Konstansok 8
1.5. Megjegyzések 8
1.6. Osztályok és objektumok 9
1.7. Metódusok és paraméterek 11
1.8. Megbízhatóság 12
1.9. Biztonság 13
1.10. AWT 14
1.11. Grafika 14
1.12. Párhuzamosság 16
1.13. Swing 17
Az alapok 19
2.1. Karakterkészlet 19
2.2. Azonosítók 20
2.3. Egyszerű típusok 20
2.4. Literálok 21
2.5. Változódeklarációk 22
2.6. Tömbök 23
2.7. Felsorolási típusok 24
2.8. Operátorok 24
2.9. Típuskonverzió 27
2.9.1. Automatikus konverzió 27
2.9.2. Explicit konverzió 28
2.9.3. Szövegkonverzió 29
2.10. Mező, metódus elérése 29
3. Vezérlés 30
3.1. Utasítás és blokk 30
3.2. Elágazások 30
3.2.1. Egyszerű elágazás 30
3.2.2. Összetett elágazás 31
3.3. Ciklusok 32
3.3.1. Elöltesztelő ciklus 32
3.3.2. Hátultesztelő ciklus 32
3.3.3. Léptető ciklus 32
3.3.4. Bejáró ciklus 33
3 4. Feltétlen vezérlésátadás 33
3.4.1. Címkék 66
3.4.2. A break utasítás 34
3.4.3. A continue utasítás 34
3.4.4. Visszatérés 34
3.4.5. Goto? 34
4. Osztályok 35
4.1. Egy egyszerű példa 35
4.2. Példányváltozók 35
4.2.1. Változók deklarációja ? 36
4.2.2. Változók használata 37
4.3. Metódusok 61
4.3.1. Metódusok definíciója 38
4.3.2. Metódusok meghívása 39
4.3.3. A this pszeudováltozó 40
4.3.4. Metódusnevek túlterhelése 40
4.3.5. Fordítás közbeni adatfolyam-ellenőrzés 40
4.4. Objektumok használata 41
4.5. Hozzáférési kategóriák 42
4.5.1. Félnyilvános tagok 43
4.5.2. Nyilvános tagok 43
4.5.3. Privát tagok 43
4.5.4. Leszármazottban hozzáférhető tagok 44
4.6. Osztály szintű tagok 44
4.6.1. Osztályváltozók 44
4.6.2. Osztálymetódusok 45
4.7. A főprogram 45
4.8. Konstruktorok 46
4.8.1. Konstruktorok definíciója 46
4.8.2. Példányosítás paraméterekkel 47
4.9. Inicializáló blokkok 48
4.10. Destruktor jellegű metódusok 49
4.11. Öröklődés 49
4.11.1. Osztály kiegészítése új tagokkal 49
4.11.2. A konstruktorok és az öröklődés 50
4.11.3. Polimorfizmus 51
4.11.4. Példánymetódusok felüldefiniálása 51
4.11.5. A túlterhelés és az öröklődés viszonya 52
4.11.6. Osztálymetódusok elfedése 53
4.11.7. Változók elfedése 53
4.11.8. A protected hozzáférési kategória 53
4.11.9. Az osztály hierarchia 54
4.11.10. Absztrakt osztályok és metódusok 54
4.11.11. Végleges osztályok és metódusok 55
5. Interfészek 56
5.1. Az interfészek alapjai 56
5.2. Interfészek deklarációja 58
5.3. Interfészek implementálása 59
5.4. Interfészek használata deklarációkban 59
5.5. Interfészek kiterjesztése 60
5.6. Az interfészdeklaráció törzse 60
5.6.1. Konstansok 62
5.6.2. Absztrakt metódusok
5.7. Interfészek használata 65
6. Csomagok 66
6.1. Csomagok elemei 66
6.2. A csomagok leképezése 67
6.2.1. Fájlrendszerben tárolt csomagok 67
6.2.2. Adatbázisban tárolt csomagok 69
6.3. Fordítási egység 69
6.3.1. Csomagdeklaráció 69
6.3.2. Importdeklarációk 70
6.3.3. Típusdeklarációk 72
6.4. Csomag létrehozása 73
6.5. Csomag névválasztása 73
6.6. A fejlesztői környezet csomagjai 73
6.7. Több fordítási egységet alkotó program kezelése 74
7. Kivételkezelés 75
7.1. A Java kivételkezelésének működése 75
7.1.1. Kivétel keletkezése 75
7.1.2. Megfelelő kivételkezelő keresése 76
7.2. A kivételkezelés alkalmazási köre 76
7.3. A kivételkezelés megvalósítása 77
7.3.1. A kivétel kiváltása 77
7.3.2. A kivétel elkapása 78
7.3.3. A kivétel specifikálása 81
7.4. Példa kivételkezelés megvalósítására 81
7.5. Kivételosztályok helye az osztályhierarchiában 82
7.6. A kivételkezelés előnyei 83
7.6.1. A hibakezelő kód jól elkülönül a tényleges kódtól 83
7.6.2. A hiba könnyen eljut oda, ahol azt kezelni kell 84
7.6.3. A hibatípusok csoportosítása 86
7.7. Az állítások 86
7.7.1. Az állítások típusai 87
7.7.2. Az állítások használata 88
8. Generikusok 90
8.1. Motiváció 90
8.2. Célok 94
8.3. Típustörlés és nyers típusok 94
8.4. Típusbiztos gyűjtemény keretrendszer 97
8.5. Típusmegszorítás 100
8.6. Altípusok 102
8.7. Típushelyettesítők 105
8.8. Amire figyelni kell 108
8.8.1. Generikus new 108
8.8.2. Generikus tömbök 109
8.8.3. Felsorolási típusok 110
8.8.4. instanceof 110
8.8.5. A Class osztály 111
9. Java programok 112
9.1. Programfejlesztés
9.1.1. A Java 2 platform 112
9.1.2. Sun J2SE JDK 113
9.1.3. Verziószámok 114
9.1.4. Programfajták 114
9.2. A java forrásfájlok 115
9.2.1. Unicode (native2ascii) 116
9.3. Annotációk 119
9.3.1. Generátor annotációk (apt) 121
9.3.2. Az APTTeszt példaprogram 123
9.4. Beágyazott dokumentáció (javadoc) 127
9.4.1. Dokumentációs stílus 128
9.4.2. Blokkleíró elemek 129
9.4.3. Speciális beágyazható elemek 131
9.4.4. Tagletek 131
9.4.5. Docletek 132
9.4.6. Dokumentált annotációk 132
9.4.7. Dokumentációs forrásfájlok 132
9.4.8. Generált fájlok 133
9.4.9. A TagletTeszt példaprogram 134
9.5. Fordítás 136
9.5.1. Fordítási annotációk 136
9.5.2. A javac fordítóprogram 137
9.6. A .class bájtkód fájlok 139
9.6.1. Visszafordítás (javap) 140
9.6.2. Bájtkód ellenőrzés i4l
9.7. A .jar Java archívumok 142
9.7.1. A jar fájlformátum 142
9.7.2. Verziókezelés 144
9.7.3. Opcionális kiegészítő csomagok (extcheck) 146
9.7.4. Támogatott csomagok 148
9.7.5. Digitálisan aláírt Java archívumok (jarsigner) 149
9.7.6. A jar segédprogram 151
9.7.7. Archívumok optimalizálása (pack200) 152
9.8. A futtató rendszer 154
9.8.1. A java futtató 154
9.8.2. Keresési útvonal 155
9.8.3. Bájtkód betöltés 156
9.8.4. Dinamikus fordítás (HotSpot) 159
9.8.5. Memóriakezelés (szemétgyűjtés) 160
9.8.6. A BajtkodTeszt példaprogram 163
9.9. Alkalmazások készítése 166
9.9.1. Alkalmazás indítása 167
9.9.2. Paraméterátadás 167
9.9.3. Felhasználói felület 167
9.9.4. Kommunikáció az operációs rendszerrel 167
9.9.5. Program befejezése 168
9.9.6. Az AlkalmazasTeszt példaprogram 168
9.10. Alkalmazások terjesztése 170
9.10.1. Java Hálózati Indítási Protokoll (JNLP) 170
9.10.2. A JNLP működése 171
9.10.3. A JNLP leíró fájl 172
9.10.4. A JNLP API 172
9.10.5. Java Web Start (javaws) 178
9.10.6. A JNLPTeszt példaprogram 178
9.11. Nyomkövetés (hibakeresés) 183
9.11.1. Interfész a virtuális géphez (JVMTI) 183
9.11.2. Teljesítménymérés (HPROF) 184
9.11.3. Hívási lánc kilistázása és holtpontkeresés 189
9.11.4. A NyomkovetesTeszt példaprogram 192
9.11.5. Külső nyomkövető programok (jdb) 195
9.11.6. NyomkovetesTesztNyomkoveto példaprogram 202
9.11.7. Ha elszáll/lefagy a JVM 204
9.12. Felügyeleti eszközök 209
9.12.1. Platformfelügyelet (javacpl) 209
9.12.2. JVM felügyeleti segédprogramok 226
9.12.3. Felügyeleti komponensek (JMX) 233
9.12.4. Távoli felügyelet (jconsole) 240
10. A java.lang csomag 248
10.1. Az Object osztály 248
10.2. A Comparable interfész 251
10.3. Elemi típusok osztályba csomagolása 252
10.3.1. Az Integer osztály 252
10.3.2. Numerikus konstansok 253
10.3.3. Automatikus csomagolás 254
10.4. Sztringkezelés 255
10.4.1. A String osztály 255
10.4.2. A StringBuffer és StringBuilder osztályok 261
10.5. A Math és StrictMath osztályok 263
10.6. Felsorolás típus 265
10.7. Rendszerszintű osztályok 266
11. Eszközök és nemzetközi programozás 267
11.1. A java.util csomag interfészei 267
11.1.1. A java.util.Enumeration interfész 267
11.1.2. A java.util.Observer interfész 268
11.2. A java.util csomag osztályai 268
11.2.1. Az Observable osztály 268
11.2.2. A BitSet osztály 269
11.2.3. Dátum- és időkezelés 269
11.2.4. Szótárak, hashtáblák, jellemzők 271
11.2.5. Adaptáció a környezethez 271
11.2.6. A Random osztály 275
11.2.7. A StringTokenizer osztály 275
11.2.8. A Timer és a TimerTask osztály 276
11.2.9. A Stack osztály 276
11.2.10. A Vector osztály 276
11 3 Reguláris kifejezések illesztése és helyettesítése 277
11 3 1. A Java reguláris kifejezései 277
11 3 2 Az API használata: illesztés és helyettesítés 279
12. Változó argumentumszámú metódusok 281
12.1. Korábbi módszerek 281
12.2. Az új szintaktikai elem 281
12.3. Kapcsolat a tömb típusú argumentumokkal 282
12.4. Túlterhelés 282
12.5. Hibalehetőségek 283
12.6. Egy alkalmazás: printf 284
13. Gyűjtemény Keretrendszer 286
13.1. Alapvető gyűjtemények és leképezések 286
13.1.1. Gyűjtemény 287
13.1.2. Halmaz 289
13.1.3. Lista 290
13.1.4. Sor 291
13.1.5. Leképezés 292
13.1.6. Rendezés 293
13.1.7. Rendezett halmaz 294
13.1.8. Rendezett leképezés 294
13.2. Generikus gyűjtemények 294
13.3. A Collections osztály 295
13.3.1. Burkoló implementációk 295
13.3.2. Algoritmusok 296
13.3.3. További hasznos műveletek 298
13.4. Az Arrays osztály 299
13.5. Gyűjtemények a java.util.concurrent csomagban 299
13.5.1. A ConcurrentLinkedQueue osztály 299
13.5.2. A BlockingQueue interfész és megvalósításai 299
13.5.3. A ConcurrentMap interfész és megvalósítása 301
13.5.4. Másoló lista és halmaz 301
13.6. Saját implementációk 302
13.7. Felhasználás programkönyvtárakban 302
14. A bemenet és kimenet kezelése 303
14.1. Adatfolyamok 304
14.1.1. Alapfunkciók 305
14.1.2. Az adatfolyamok adatainak tárolása 309
14.1.3. Szűrők 314
14.1.4. Objektumok szerializációja 319
14.2. Közvetlen elérésű fájlok 322
14.3. A File osztály: kapcsolat a fájlrendszerrel 323
14.3.1. Könyvtárak kilistázása 324
14.3.2. A fájlokhoz való hozzáférés korlátozása 324
14.4. Szövegfeldolgozás 325
14.5. A Java módosított UTF-8 formátuma 328
14.6. Tömörítés: a java.util.zip csomag 328
14.7. Az „új" be- és kimenet könyvtár 329
14.7.1. A bufferek működése 331
14.7.2. Bufferek létrehozása 333
14.7.3. Nem blokkoló IO 337
14.8. Példák gyakori feladatok megoldására 339
14.8.1. Számok olvasása szövegfájlból 339
14.8.2. Szövegfájlok kezelése 340
14.8.3. Adatok bináris formában 342
14.8.4. Többszálú szerver 343
14.8.5. Több kliens kiszolgálása egy szálon 344
15. Beágyazott osztályok 349
15.1. Tagosztályok 349
15.1.1. Statikus tagosztályok 349
15.1.2. Nem statikus tagosztályok 352
15.2. Lokális és névtelen osztályok 355
15.2.1. Lokális osztályok 355
15.2.2. Névtelen osztályok 357
16. Grafikus felhasználói felület 359
16.1. GUI 359
16.1.1. Grafikus komponensek 359
16.1.2. JFC 360
16.1.3. Az AWT megvalósítása 360
16.2. A felhasználói felület életciklusa 361
16.2.1. A FaktorialisGUI példaprogram 361
16.2.2. Felület felépítése 362
16.2.3. Felület használata 363
16.2.4. Felület bezárása 363
16.3. Eseményvezérelt programozás 363
16.3.1. Alacsonyszintű események 364
16.3.2. Beviteli események 365
16.3.3. Események feldolgozása 370
16.3.4. Események figyelése 371
16.3.5. Beviteli események figyelése 373
16.3.6. Az EsemenyTeszt példaprogram 374
16.4. Az AWT segédelemei 377
16.4.1. Kapcsolat az ablakozó rendszerrel 378
16.4.2. A ToolkitTeszt példaprogram 378
16.4.3. Megjelenítési hardverkörnyezet 380
16.4.4. Pozíció és méret reprezentálása 380
16.4.5. Alakzatok 380
16.4.6. Egérkurzor 380
16.4.7. Betűtípusok 381
16.4.8. Színkezelés 382
16.4.9. Képkezelés 384
16.4.10. Rajzolás 285
16.5. Grafikus komponensek 385
16.5.1. Grafikus megjelenítés 387
16.5.2. A PaintTeszt példaprogram 389
16.5.3. A CanvasPaintTeszt példaprogram 392
16.5.4. Konténerek 394
16.5.5. A komponensek „súlyossága" 396
16.5.6. A PehelyPaintTeszt példaprogram 397
16.5.7. Swing komponensek 399
16.6. Elrendezési stratégiák 399
16.6.1. A TesztLayout példa elrendezési stratégia 401
16.6.2. A LayoutTeszt példaprogram 407
16.6.3. Kézi elrendezési stratégia 411
16.6.4. A NullLayoutTeszt példaprogram 411
16.6.5. A CardLayout elrendezési stratégia 412
16.6.6. A BorderLayout elrendezési stratégia 413
16.6.7. A FlowLayout elrendezési stratégia 414
16.6.8. A GridLayout elrendezési stratégia 415
16.6.9. A GridBagLayout elrendezési stratégia 416
16.7. Fókuszkezelés 418
16.7.1. A központi fókuszkezelő 419
16.7.2. Billentyűzet események 419
16.7.3. Fókusz események 419
16.7.4. Fókuszléptetés 420
16.7.5. Fókusz megszerzése és elvesztése 421
16.7.6. A FokuszTeszt példaprogram 422
16.8. Felsőszintű AWT konténerek 425
16.8.1. Ablakok 425
16.8.2. Párbeszédablakok 428
16.8.3. Az AblakTeszt példaprogram 428
16.9. AWT konténerek 430
16.9.1. Panel 430
16.9.2. Görgethető panel 430
16.9.3. A ScrollPaneTeszt példaprogram 431
16.10. AWT felületelemek 433
16.10.1. Canvas 433
16.10.2. Címke 433
16.10.3. A TobbSorosCimke példaprogram 433
16.10.4. Nyomógomb 436
16.10.5. Jelölőnégyzet/rádiógomb 436
16.10.6. A CheckboxTeszt példaprogram 437
16.10.7. Szövegmezők 438
16.10.8. Lista 438
16.10.9. Legördíthető lista 439
16.10.10. A ListaTeszt példaprogram 439
16.10.11. Görgetősáv 442
16.10.12. A ScrollbarTeszt példaprogram 442
16.11. AWT menük 443
16.11.1. Menü elemek 444
16.11.2. Menü konténerek 444
16.11.3. A MenuTeszt példaprogram 447
16.12. Az AWT további lehetőségei 447
16.12.1. Drag & Drop 453
16.12.2. A DnDTeszt példaprogram 456
16.12.3. Beviteli módszerek 4g2
16.12.4. Az IMTeszt példaprogram 465
16.12.5. Beviteli eszköztámogatás 4g7
16.12.6. Tesztelés 457
16.12.7. A RoboTeszt példaprogram 471
16.12.8. Biztonság 471
17. Párhuzamosság 472
17.1. Párhuzamosság a számítástechnikában 472
17.1.1. Folyamatok, szálak 472
17.1.2. Párhuzamosság és erőforrás-használat 474
17.1.3. Mikor alkalmazzunk szálakat? 475
17.2. Szálak használata 475
17.2.1. Hogyan készítsünk szálakat? 476
17.2.2. Hatékony szálindítás 477
17.2.3. Ütemezett szálindítás 479
17.2.4. Szálcsoportok 481
17.2.5. Démon szálak 483
17.2.6. Prioritások 484
17.2.7. Önző és udvarias szálak 485
17.2.8. Lokális szálváltozók 486
17.3. Szinkronizáció 488
17.3.1. Monitoros szinkronizáció 488
17.3.2. Szinkronizáció üzenetekkel 491
17.3.3. Szálak összekapcsolása 493
17.3.4. Zárolás 495
17.3.5. További eszközök 497
17.4. Védett változók 498
17.4.1. volatile változók 498
17.4.2. Atomi típusok 499
17.4.3. Szinkronizált adattárolók 501
17.4.4. Konkurens adattárolók 501
17.5. Futásvezérlés 502
17.5.1. Felfüggesztés 503
17.5.2. Megszakítás 505
17.5.3. Leállítás 506
17.6. Szálak állapotai 507
17.6.1. Futtatható és futó állapot 508
17.6.2. Blokkolt állapot 508
17.6.3. Várakozó állapot 509
17.6.4. Terminált állapot 509
17.7. Visszatekintés 509
18. Appletek 510
18.1. Applet beágyazása 510
18.1.1. A HTM LConverter segédprogram 513
18.2. Applet futtatása 513
18.2.1. A Java Plug-in 514
18.2.2. Az appletviewer segédprogram 515
18.2.3. Keresési útvonal 515
18.3. Appletek megvalósítása 516
18.3.1. Indítás 516
18.3.2. Appletinformációk lekérdezése 517
18.3.3. Egy applet életciklusa 518
18.3.4. Grafikus felhasználói felület 518
18.3.5- Az EleteiklusTeszt példaprogram 519
18J.6. Saját programszálak használata 522
18.3.7. Az AppletPaintTeszt példaprogram 522
18 4 Applet kommunikációja a böngészővel 524
18.4.1. A böngészőprogram elérése 524
18.4.2. Kép és hang kezelése 525
18.4.3. A HipermediaTeszt példaprogram 526
18.4.4. Kommunikáció appletek között 533
18.4.5. A KommunikacioTeszt példaprogram 534
18.4.6. JavaScript elérése 536
18.5. Appletek biztonsági megkötései 538
18.5.1. Digitálisan aláirt appletek 539
19. Java2D 540
19.1. Az 1.1-es Javával való kompatibilitás 540
19.2. Rajzolás a Graphics2D osztállyal 541
19.2.1. Az attribútumok 541
19.2.2. A rajzolás folyamata 542
19.2.3. A megjelenítésre használt eszközök 543
19.3. A Graphics2D attribútumai 543
19.3.1. A rajzolás minőségének beállítása 543
19.3.2. Kontúr 544
19.3.3. Kitöltés 545
19.3.4. Kombinálás 546
19.3.5. Vágás 546
19.3.6. Affin transzformációk 547
19.4. Alakzatok 549
19.4.1. Az egyszerű elemek és az iterátorok 549
19.4.2. CAG, halmazműveletek 550
19.4.3. Befoglaló téglalapok, találatvizsgálat 551
19.4.4. Egyedi alakzatok létrehozása 551
19.5. Szövegmegjelenítés 551
19.5.1. Betűtípusok 551
19.5.2. A szövegmegjelenítés folyamata 552
19.5.3. Egy- és kétirányú szövegek megjelenítése 553
19.5.4. Többsoros szövegek megjelenítése 553
19.5.5. Képek elhelyezése a szövegben 554
19.5.6. Találatok kezelése 555
19.5.7. Kurzorok megjelenítése és mozgatása 555
19.5.8. Szövegek kijelölése 556
19.5.9. „Textúrázott" betűtípusok használata 557
19.5.10. Új betűtípus készítése 557
19.5.11. Betűtípusok dinamikus betöltése 557
19.5.12. Alapfogalmak 557
19.6. Színkezelés 559
19.6.1. A ColorSpace osztály 560
19.6.2. A Color osztály 561
19.7. Képkezelés 562
19.7.1. Alapfogalmak 563
19.7.2. A Bufferedlmage és a virtuális képernyők 563
19.7.3. A Raster osztály használata 565
19.7.4. A DataBuffer és a SampleModel osztályok 565
19.7.5. A ColorModel osztály használata 567
19.7.6. Egy egyszerű példa 567
19.7.7. Szűrők 568
19.8. Nyomtatás 568
19.8.1. Visszahívásos nyomtatási modell 568
19.8.2. A nyomtatás részei 569
19.8.3. Egyszerű dokumentumok nyomtatása 569
19.8.4. Összetett dokumentumok nyomtatása 571
19.8.5. Nyomtatáshoz kapcsolódó párbeszéd ablakok 572
19.9. Angol-magyar szótár 572
20. Önelemzés 574
20.1. Bevezetés 574
20.2. Áttekintés 574
20.3. Egy rövid példa 575
20.4. Felderítés 576
20.4.1. Osztály 576
20.4.2. Tömb 579
20.4.3. Primitív típusok 580
Beavatkozás 581
20.5.1. Adattagok megváltoztatása 581
20.5.2. Metódusok meghívása 581
Helyettesítés 582
20.6.1. Szelektív nyomkövetés 582
20.6.2. A nyomkövetés megvalósítása 583
20.6.3. További ötletek 585
Adatkonverzió 585
20.7.1. Csomagolás 586
20.7.2. Bővítés 586
20.8. Biztonsági követelmények 587
20.9. Egy nagyobb példa 588
21. Hálózatkezelést támogató alaposztályok591
21.1. A hálózat modellje 591
21.2. Az IP-címek és az útvonalkijelölés 593
21.3. A hálózati kapcsolat modellje 596
21.3.1. Összeköttetés-alapú kapcsolatok 596
21.3.2. Összeköttetés-mentes kapcsolatok 597
21.3.3. A kommunikáció további kérdései 598
21.4. A hálózatkezelési osztályok 598
21.5. Összeköttetés-alapú kommunikáció Javában 599
21.6. Összeköttetés-mentes kommunikáció Javában 600
21.7. Kommunikációs végpont opciók 501
21.8. Hálózati kommunikációs bufferek mérete 602
21.9. Adatfolyam lezárásának jelzése 603
21.10. Internetcímek - A DNS tartomány-hierarchiája 603
21.11. Internetcímek kezelése 605
21.12. Több hálózati kártyával ellátott számítógépek 606
21.13. Csoportkommunikáció 607
21.14. A Java 2 biztonsági vonatkozásai 609
21.15. Kapcsolódás SOCKS hálózati tűzfalakhoz 609
21 16. Származtatás a hálózatkezelési osztályokból 611
21.16.1. Alkalmazkodás a helyi hálózati tűzfalakhoz 612
21.16.2. Más transzport protokollok elérése 616
21.17. Példaprogramok 617
21.17.1 Összeköttetés-alapú szerveralkalmazás 617
21.17.2. Összeköttetés-alapú kliensalkalmazás 619
21.17.3. Összeköttetés-mentes szerveralkalmazás 620
21.17.4. Összeköttetés-mentes kliensalkalmazás 620
21.17.5. Egy multicast-csomagokat fogadó alkalmazás 621
21.17.6. Egy multicast-csomagokat küldő alkalmazás 622
21.17.7. Megbízhatóság biztosítása 622
22. Internet- és WWW-objektumok elérése 629
22.1. Egységes erőforrásnevek, nevek rendszere 629
22.2. Hálózati erőforrások URL-azonosítói 630
22.3. Az URL osztály 631
22.4. Az URI osztály 634
22.5. Az URLConnection osztály 635
22.6. JAR fájlok hálózati elérése 637
22.7. A HTTP protokoll és alkalmazásai 637
22.7.1. A MIME-szabvány 637
22.7.2. A HTTP protokoll architektúrája 639
22.7.3. HTTP-fejlécmezők 641
22.7.4. CGI-programok és a servletek 643
22.7.5. A HttpURLConnection osztály 644
22.8. Az elért WWW erőforrások tartalma 647
22.8.1. Protokollkezelő osztályok felépítése 648
22.8.2. A Java platform bővítése új protokollkezelővel 649
22.8.3. Tartalomkezelő osztályok 649
22.8.4. A Java platform bővítése új tartalomkezelővel 650
22.9. HTML űrlapok működése - alapok 651
22.9.1. A HTML-űrlapok és működésük 652
22.9.2. A Java servletek és a HTTP protokoll 656
Tárgymutató 657
II. kötet:
A. Távoli metódushívás 1
A.1. A távoli metódushívás modellje 2
A.2. A távoli metódushívás eszközei 3
A.2.1. A paraméterátadás kérdései 5
A.2.2. A kliens és a szerver összekapcsolódása 6
A.2.3. Tipikus hibák távoli metódushívás során 7
A.3. Távoli metódushívás Java környezetben 8
A.4. Egy távoli objektum implementációja 9
A.5. Paraméterátadás 13
A.6. A Java RMI viselkedése kommunikációs hibáknál 13
A.7. A kliens- és a szervercsonk összekapcsolása 14
A.7.1. Távoli objektumok megnevezése 14
A.7.2. Távoli referenciák elérése 15
A.7.3. A registry implementációja 16
A.8. A példaprogramunk befejezése 18
A.9. Távoli metódusok párhuzamos környezetben 18
A.10. Távoli objektumok osztott szemétgyűjtése 19
A.10.1. Osztott szemétgyűjtés szerveroldala 20
A.11. Távoli osztályok elérése 21
A.12. A példaprogramunk tesztelése 23
A.13. Visszatekintés a fejlesztés menetére 25
A.14. Távoli metódushívás hálózati tűzfalak mögött 25
A.15. Objektumok aktiválása 26
A.15.1. Az objektumaktiváció modellje 26
A.15.2. Aktivációs információk 28
A.15.3. Aktivációs csoportok információi 28
A.15.4. Az aktivációs mechanizmusok alapelemei 29
A.15.5. Egy új aktivációs csoport létrehozása 31
A.15.6. Az aktivációs mechanizmus központi eleme 31
A.15.7. Kezdeti értékkijelölés alkalmazása 33
A.15.8. Az aktivációt támogató külső folyámat 33
A. 16. Egy példa: perzisztens naplózás 33
A. 17. Komolyabb példa: tranzakciókezelés RMI felett 36
A. 17.1. Több résztvevő működésének szinkronizációja 36
A.17.2. A megoldott feladat 39
A. 17.3. A feladatot megoldó eszközök áttekintése 39
A. 17.4. A távolról elérhető komponensek interfészei 41
A.17.5. A komponensek összekapcsolása 44
A.17.6. A naptárokat megvalósító osztály 44
A.17.7. A kétfázisú megegyezési protokoll 45
A.17.8. A koordinátorokat konstruáló osztály 46
A.17.9. A naptárakba bejegyzést elvégző osztály 46
A.17.10. A program fordítása és kipróbálása 47
A.17.11. A megoldás forráskódja 48
A. 18. Egy elosztott szinkronizációs mechanizmus 54
A.19. A Java 5.0 újdonságai 58
A.19.1. Dinamikus csonkosztály-generálás 58
A. 19.2. Az RMI hálózati szintű vezérlése végpontgenerátorokkal 59
A.19.3. Biztonságos végpontok (JSSE) 63
A.19.4. Igény szerinti alkalmazás-indítás 64
A.19.5. Az rmid igény szerinti indítása
B. A CORBA és a Java kapcsolata 70
B.1. A CORBA felépítése 70
B.2. Az Interface Definition Language (IDL) 72
B.3. Az IDL-Java leképezés 73
B.4. Példa a CORBA használatára 77
B.5. CORBA névszolgáltatás 84
B.6. További lehetőségek 85
C. A Java és a matematika 86
C.1. BigDecimal osztály 86
C.2. Biglnteger osztály 89
C.3. Biglnteger osztály jelentősége: titkosítás 89
C.3.1. RC5, szimmetrikus algoritmus 90
C.3.2. RSA, aszimmetrikus algoritmus 91
C.3.3. Nagy prímszámok generálása 93
C.3.4. RSA algoritmus megvalósítása Java nyelven 94
C.3.5. Hash függvények, MD5 algoritmus 97
C.3.6. Kriptográfiai protokollok 98
D. Biztonság 100
D.1. A Java biztonsági rendszerének felépítése 101
D.1.1. A Sandbox modell változatai 102
D.1.2. A Java 2 biztonsági modellje 102
D.1.3. Az új védelmi mechanizmus áttekintése 103
D.2. Jogosultságok 104
D.2.1. Speciális jogosultságok és jogosultságcsoportok 105
D.2.2. Új jogosultságok létrehozása 106
D.3. Biztonsági szabályok 108
D.3.1. Szabályzatobjektumok és -osztályok létrehozása 109
D.3.2. Az alapértelmezett szabályzatimplementáció 109
D.3.3. Biztonsági kivételek 113
D.4. A hozzáférést vezérlő mechanizmusok 113
D.4.1. Védelmi tartományok 114
D.4.2. Hozzáférés-vezérlő 114
D.4.3. Hozzáférési környezet 117
D.5. Biztonságos osztálybetöltés 119
D.5.1. JAR Fájlok 121
D.5.2. Osztálybetöltés és jogosultságok 123
D.6. A biztonsági rendszer használata 123
D.7. Aláírt és őrzött objektumok 124
D.7.1. őrzött objektumok 124
D.7.2. Aláírt objektumok 124
D.8. JAAS - Java Authentication and Authorization Service API 125
D.8J.. Authentikáció 126
D.8.2. Authorizáció 129
E. Kriptográfiai eszközök 131
E.1. Kriptográfiai alapok 131
E.1.1. Rejtjelezés 132
E.1.2. Aszimmetrikus rendszerek 132
E.1.3. Digitális aláírások 133
E.1.4. Hash-függvények 134
E.1.5. Nyilvános kulcsok hitelessége 134
E.1.6. Véletlenszám-generátorok 135
E.2. JCA - Java Cryptography Architecture 135
E.3. Szolgáltatók 136
E.3.1. Meghajtóosztályok 137
E.3.2. A Provider osztály 140
E.3.3. A Security osztály 140
E.3.4. A SUN szolgáltató 141
E.4. JCE - Java Cryptography Extension 141
E.4.1. Meghajtóosztályok 142
E.4.2. Rejtjelezett objektumok és adatfolyamok 144
E.4.3. A SunJCE szolgáltató 146
E.5. Kanonikus nevek és attribútumok 147
E.5.1. Hash-algortimusok 147
E.5.2. Kulcs- és paramétergenerálás 147
E.5.3. Digitális aláírásra használható algoritmusok 147
E.5.4. Pszeudóvéletlenszám-generátorok 148
E.5.5. Tanúsítványtípusok 148
E.5.6. Kulcsadatbázis-típusok 148
E.5.7. Rejtjelezés 148
E.5.8. Kulcscsere 150
E.5.9. Kulcsok létrehozása 150
E.5.10. Algoritmus paraméterek 151
E.5.11. MAC Algoritmusok 151
E.5.12. Szolgáltatások attribútumai 151
F. Perzisztencia 152
F.1. A perzisztencia fogalma 152
F.2. Példa a perzisztencia megvalósítására 154
F.3. Az Object Serialization programozói interfész 158
F.3.1. Verziók 161
F.3.2. Az adatcsatorna-protokoll verziói 163
F.3.3. Biztonsági megfontolások 153
F.3.4. Példa szerializáció használatára 163
F.4. Perzisztens mezők 166
F.5. Helyettesítés 169
F.6. Megjegyzések 170
G. Adatbázis-programozás 171
G.1. JDBC meghajtóprogramok 172
G.1.1. Két- és háromrétegű adatbázis-elérési modell 173
G.1.2. JDBC-nek megfelelő meghajtóprogramok 173
G.2. ODBC-JDBC 173
G.3. Továbbfejlesztési tervek 174
G.4. A JDBC használata 174
G.4.1. Fordítás 174
G.4.2. Futtatás 174
G.5. Meghajtóprogramok kezelése 175
G.5.1. A meghajtóprogram kiválasztása 175
G.5.2. Meghajtóprogramok regisztrálása 175
G.6. Kapcsolattartás az adatbázissal 175
G.6.1. Adatbázis-URL-ek 176
G.6.2. Kapcsolat felvételének hagyományos módja 176
G.6.3. Kapcsolat felvételének ajánlott módja 178
G.6.4. Tranzakciókezelés 179
G.6.5. Információ a kapcsolatról 181
G.6.6. Hibakezelés 181
G.6.7. Kapcsolat lezárása 182
G.7. JDBC típusok 182
G.7.1. A JDBC típus használata 182
G.7.2. SQL - Java típusmegfeleltetés 183
G.7.3. SQL3 adattípusok 186
G.7.4. Felhasználói SQL adattípusok 137
G.7.5. Adatbázisbeli Java objektumok 190
G.8. SQL utasítások végrehajtása 191
G.8.1. A Statement interfész 191
G.8.2. A PreparedStatement interfész 195
G.8.3. A CallableStatement interfész 196
G.9. SQL utasítások kötegelt végrehajtása 197
G.9.1. Kötegelt végrehajtás előkészítése 197
G.9.2. Kötegelt végrehajtás indítása 198
G.9.3. Hibakezelés kötegelt végrehajtás esetén 198
G.9.4. Példa kötegelt végrehajtásra 198
G.10. Eredménytáblák kezelése 199
G.10.1. Eredménytábla típusok 199
G.10.2. Eredménytábla létrehozása 200
G.10.3. Eredménytábla elérésének optimalizálása 200
G.10.4. Navigálás az eredménytáblában 200
G.10.5. Értékek beolvasása 202
G.10.6. Értékek módosítása 202
G.10.7. Új sor beszúrása 202
G.10.8. Sor törlése 203
G.10.9. Változások észlelése 203
G.10.10. Eredménytábla lezárása 204
G.11. Önálló eredménytáblák 205
G.11.1. Adatforrás megadása 205
G.11.2. Eredménytábla feltöltése 205
G.11.3. Eredménytábla használata 206
G.11.4. Eredménytábla események 206
GJ1.5. Önálló eredménytábla megvalósítások 206
G.12. Példa 210
H. JavaBeans - Szoftver-komponensek 217
H.1. Szoftver-komponensek 217
H.1.1. Komponensek és konténerek 217
H.1.2. Elemzés és feltárás 218
H.1.3. Az interfész és tulajdonságok 18
H1.4- Perzisztencia 219
H.1.5. Események 219
H.1.6. Vizuális tervezés 219
H.2. Példa vizuális fejlesztőeszközre: NetBeans 220
H.2.1. Letöltés és installálás 220
H.3. Tulajdonságok 220
H.3.1. Hogyan tehetünk egy beant testreszabhatóvá 220
H.3.2. Indexelt tulajdonságok 221
H.3.3. Kötött és vétózható tulajdonságok 221
H.3.4. Példa - SmileyBean 223
H.4. Beanek és az eseménykezelés 230
H.4.1. Saját eseménytípus létrehozása 231
H.5. Testreszabás 234
H.5.1. A testreszabás eszközei 234
H.5.2. Elnevezési konvenciók 234
H.5.3. Beanlnfo interfész - mit tud a bean? 234
H.5.4. Saját tulajdonságszerkesztő 235
H.5.5. A Customizer interfész 235
H.5.6. Bean konténerek és a testreszabás 235
H.5.7. Bean feltárás: az Introspector osztály 235
H.5.8. A Beanlnfo interfész használata 236
H.5.9. Példa tulajdonságszerkesztőre 238
H.6. Beanek a Java 2-ben (Glasgow) 239
I. Swing 240
I.1. Modellek használata 240
I.2. Megjelenítés 241
I.2.1. A megjelenítés nyomkövetése 242
I.2.2. A megjelenítést vezérlő programszál 242
I.2.3. Megjelenítés stílusának megváltoztatása 244
I.2.4. Komponens-tulajdonságok állítása 246
I.2.5. Ikonok megjelenítése 246
I.3. Műveletek definiálása 247
I.3.1. Billentyűparancsok használata 247
I.3.2. Segédszövegek megjelenítése 248
I.3.3. A SwingTeszt példaprogram 249
I.3.4. A PaintTeszt példaprogram 255
I.4. Események 256
I.4.1. Időzítők használata 256
I.4.2. A TimerTeszt példaprogram 256
I.5. A Swing komponensek ősosztálya 257
I.5.1. Keretek használata 258
I.5.2. A BorderTeszt példaprogram 259
I.5.3. Beviteli ellenőrzés 262
I.6. A legfelső Swing konténer 262
I.6.1. A GlassPaneTeszt példaprogram 263
I.7. Felsőszintű Swing konténerek 266
I.7.1. Swing appletek 266
I.7.2. Ablakok 266
I.7.3. Belső ablakok 267
I.7.4. Párbeszédablakok 273
I.7.5. A DialogusTeszt példaprogram 273
I.8. Konténerek 280
I.8.1. Elrendezési stratégiák 280
I.8.2. A legegyszerűbb konténer 281
I.8.3. A BoxTeszt példaprogram 281
I.8.4. Panel 283
I.8.5. Görgethető panel 289
I.8.6. A JScrollPaneTeszt példaprogram 285
I.8.7. Kettéosztható panel 289
I.8.8. A JSplitPaneTeszt példaprogram 290
I.8.9. Többoldalas panel 292
I.8.10. A JTabbedPaneTeszt példaprogram 293
I.8.11. Többrétegű panel 297
I.8.12. Belső ablakokat tartalmazó panel 297
I.8.13. A JlnternalFrameTeszt példaprogram 298
I.8.14. Segédeszköz panel 302
I.8.15. A JToolBarTeszt példaprogram 303
I.9. Swing felületelemek 305
I.9.1. Címke 305
I.9.2. Nyomógomb 306
I.9.3. Kétállapotú gomb 307
I.9.4. Kiválasztható gomb 308
I.9.5. Rádiógomb 308
I.9.6. A GombTeszt példaprogram 309
I.9.7. Szövegmezők 313
I.9.8. A SzovegTeszt példaprogram 317
I.9.9. Lista 323
I.9.10. Legördíthető lista 326
I.9.11. Pörgethető lista 328
I.9.12. A ListaTeszt példaprogram 329
I.9.13. Táblázat 334
I.9.14. A JTableTeszt példaprogram 338
I.9.15. Fastruktúrák 348
I.9.16. A JTreeTeszt példaprogram 353
I.9.17. Görgetősáv 361
I.9.18. Állapotjelző 363
I.9.19. A TartomanyTeszt példaprogram 364
I.10. Swing menük 371
I.10.1. Menüpontok 371
I.10.2. Menütípusok 373
I.10.3. A MenuTeszt példaprogram 376
I.11. A Swing további lehetőségei 379
I.11.1. Segédmetódusok gyűjteménye 379
I.11.2. Drag & Drop 379
I.11.3. A DnDTeszt példaprogram 331
J. Az objektumorientált tervezés áttekintése 383
J.1. Bevezetés 383
J.2. Alapfogalmak 383
J.2.1. Mit tekintünk objektumnak? 384
J.2.2. Osztály 384
J.2.3. Kapcsolatok 334
J.2.4. Öröklődés 386
J.2.5. Többszörös és ismételt öröklődés 387
J.3. Programtervezés 388
J.3.1. Fő lépések 388
J.3.2. Analízis 388
J.3.3. Rendszertervezés 396
J.3.4. Osztálytervezés 398
J.3.5. Implementálás 401
K. Tervezési mintáik 403
K.1. Tervezési minták leírása 403
K.2. Sablonmetódus 404
K.3. Gyártó metódus 405
K.4. Iterátor 407
K.5. Toldalék 409
K.6. Homogén összetétel 412
K.7. Stratégia 414
K.8. Adapter 418
L. A Java nyelvről C++ programozóknak 420
L.1. Az objektummodellek különbözősége 423
L.2. Az egyes nyelvi elemek különbségéről 425
L.2.1. Absztrakció és paradigma 425
L.2.2. A main metódus 425
L.2.3. Kommentek 426
L.2.4. Előfordító 427
L.2.5. Fejállományok (headerek) 428
L.2.6. Primitív típusok 428
L.2.7. Mutatók, referenciák 430
L.2.8. Operátorok, kifejezések 430
L.2.9. Const 432
L.2.10. Argumentumok alapértelmezett értéke 433
L.2.11. Utasítások 433
L.2.12. Goto és címkék 434
L.2.13. Osztályok, interfészek és öröklődés 435
L.2.14. Hozzáférési kategóriák 436
L.2.15. Friend 437
L.2.16. Struktúrák 437
L.2.17. Felsorolási típus 438
L.2.18. Bitmezők, uniók 440
L.2.19. String 442
L.2.20. Hatókör operátor 442
L.2.21. Névterek (namespace) 443
L.2.22. RTTI, típuskényszerítések 443
L.2.23. Kivételkezelés 445
L.2.24. Template 446
M. Kiegészítések a biztonsághoz 448
M.1. Biztonsági konfigurációs fájl 448
M.2. Kulcsadatbázis 449
M.2.1. A kulcsadatbázis védelme 449
M.2.2. Kulcsadatbázis karbantartása (keytool) 449
M.2.3. JAR fájlok hitelesítése (jarsigner) 451
M.3. Biztonsági szabályzat 452
M.3.1. Biztonsági szabályzatok készítése (policytool) 452
M.3.2. Példa biztonsági szabályzatfájlra 452
M.4. Esettanulmány: aláírt applet 452
M.4.1. Az aláíró személyazonosságának elkészítése 452
M.4.2. Aláírt applet 455
M.4.3. Aláírt appletek használata 456
M.5. Jogosultságok és biztonsági kockázataik 456
M.5.1. java.security.AllPermission 456
M.5.2. javax.sound.sampled.AudioPermission 457
M.5.3. javax.security.auth.AuthPermission 457
M.5.4. java.awt.AWTPermission 459
M.5.5. java.io.FilePermission 460
M.5.6. java.util.logging.LoggingPermission 460
M.5.7. java.net.MetPermission 461
M.5.8. javax.security.auth.PrivateCredentialPermission 461
M.5.9. java.util.PropertyPermission 463
M.5.10. java.lang.reflect.ReflectPermission 462
M.5.11. java.lang.RuntimePermission 462
M.5.12. java.security.SecurityPermission 466
M.5.13. java.io.SerializablePermission 469
M.5.14. java.net.SocketPermission 469
M.5.15. javax.net.SSLPermission 470
M.5.16. java.sql.SQLPermission 470
N. Java3D
N.1. Bevezetés 471
N.2. A háromdimenziós számítógépes grafikáról 473
N.2.1. A modellezés 473
N.2.2. A képszintézis 480
N.2.3. Transzformációk 485
N.3. A Java3D felépítése 487
N.3.1. Színtér-gráf 487
N.3.2. Renderelési modellek 489
N.3.3. Megjelenítési modellek 492
A Java3D programozásáról 493
Kezdetek: HelloJava3D alkalmazás 494
Térbeli alakzatok elhelyezése és attribútumai 496
N.6.1. 3D-s testek: Shape3D, GeometryArray 496
N.6.2. 3D-s szöveg: Text3D
N.6.3. 3D-s megjelölés: Appearance 503
N.6.4. Transzformációk 506
N.6.5. Textúrázás 508
N.7. A színtér-gráf rendszerezése 508
N.7.1. Csoportok: a Group csomópont 511
N.7.2. Osztott részgráfok 513
N.8. Kirajzolási alternatívák 513
N.8.1. Raster 513
N.8.2. A Java3D nézet modell programozása 514
Színtér elemek viselkedése 516
N.9.1. Viselkedési modell: Béhavior csomópont 516
N.9.2. Interpolátorok 519
N.9.3. Különleges Behavior osztályok 521
N.9.4. Morph 521
N.10. Interakció a színtérrel 522
N.10.1. Kijelölés: Pick 522
N.10.2. Beviteli eszközök 524
N.11. A virtuális világ további elemei 525
N.11.1. Fényforrások 525
N.11.2. Háttér 527
N.11.3. Köd 528
N.1.4. Java3D hangforrások 530
N.11.5. Akusztikus jellemzők 532
N.12. A VecMath csomag 534
N.13. Szójegyzék 535
O. Memóriakezelés 537
O.1. A memóriakezelési és -hivatkozási modell 537
O.2. Típuskényszerítések és az instanceof operátor 539
O.3. A class-fájlok betöltéskori ellenőrzéséről 539
O.4. Tömbök 541
O.5. Paraméterátadás metódushíváskor 544
O.6. A „void *" és a függvénymutatók 545
O.7. Erős elérhetőség és a szemétgyűjtő mechanizmus 546
O.8. Gyenge hivatkozások és referencia-objektumok 549
O.8.1. A java.lang.ref csomag nyilvános osztályai 550
O.8.2. Értesítés 551
O.8.3. A ReferenceQueué osztály metódusai 551
O.8.4. A Reference osztály metódusai 552
O.8.5. A gyenge referencia háromféle erőssége 552
O.8.6. A java.util.WeakHashMap osztály 552
O.9. A virtuális gép memóriafelhasználása 553
P. Csevegőprogram Java nyelven 554
P.1. A felhasználói felület váza (1. lépés) 554
P.2. Kliens váz kiegészítve esemény kezeléssel (2. lépés) 558
P.3. A kliens első változata (3. lépés) 560
P.4. A kommunikációs interfészek (4. lépés) 561
P.5. A kliensoldali kommunikációs objektum (5. lépés) 563
P.6. A végleges kliens (6. lépés) 564
P.7. A szerver első változata (7. lépés) 566
P.8. A szerver továbbfejlesztése (8. lépés) 569
P.9. A program futtatása és tesztelése 570
Q. XML 571
Q.1. Bevezetés az XML-be 571
Q.1.1. Speciális jelek használata 572
Q.12. Feldolgozási utasítások 573
Q.1.3. CSS Példa, az XML megjelenítése 573
Q.2. XML dokumentumok nyelvtana (DTD) 574
Q.2.1. Az elemek definiálása 575
Q.2.2. Entitások megadása 576
Q.2.3. Attribútumok definiálása 576
Q.2.4. Névtartományok 576
Q.3. XML Sémák 577
Q.4. Az XSL technológia 579
Q.4.1. Bevezetés az XSLT-be 580
Q.4.2. Példa az XSLT használatára 580
Q.5. Java és az XML 582
Q.6. A SAX használata Javából 582
Q.6.1. Hibakezelés SAX-szal 584
Q.7. A DOM használata Javából 585
Q.7.1. A DOM ábrázolás 586
Q.7.2. A DOM ábrázolás bejárása 587
Q.8. Névtartományok 588
Q.9. Az XSLT használata Javából 589
Q.10. XSLT kiterjesztése Javával 590
Q.11. Párhuzamosság 591
Q.12. Az XML további felhasználása Jávából 592
R. Az OMG IDL nyelv módosított BNF nyelvtana 593
S. A mobil Java 596
S.1. Bevezetés 596
Szabványok (Specifikációk) 596
S.2.1. Konfigurációk 597
S.2.2. Profilok 597
S.2.3. Kiegészítő csomagok 598
S.3. MIDP 598
S.4. Midietek 598
S. 5. Fejlesztés menete 600
S.5.1. WTK 600
S.5.2. A JAD és a JAR fájlok 602
S.5.3. Feltöltés mobiltelefonra 603
S.5.4. Készülékspecifikus emulátorok 604
S.5.5. Netbeans 605
S.5.6. Hatékony kód 605
Az osztályszerkezet madártávlatból 606
A felhasználói felület 607
S.7.1. Magasszintű osztályok 608
S.7.2. Alacsonyszintű osztályok 615
S.8. Időzítés 621
S.9. Egyszerűsített adatkezelés: az RMS 624
S.9.1. Rekordok - Rekordtárolók 624
S.10. J2ME hálózat 627
S.10.1. Generic Connection Framework 629
S 10.2. HttpConnection 630
S.10.3. SMS küldés, WMA 1.0 636
S.11. Fejlődési irányok 638
S 11 1 Gyártóspecifikus bővítések 639
S.11.2. A MIDP 2.0 639
Irodalomjegyzék 640
Tárgymutató 646
Nincs megvásárolható példány
A könyv összes megrendelhető példánya elfogyott. Ha kívánja, előjegyezheti a könyvet, és amint a könyv egy újabb példánya elérhető lesz, értesítjük.
Google, Facebook, Apple, Microsoft fiókkal való belépés/regisztráció eseténautomatikusan elfogadja az Általános Szerződési Feltételeket.
Elfelejtett jelszó
Kérjük, adja meg azonosítóját, és a hozzá tartozó email címet, hogy jelszavát elküldhessük Önnek!
A *-gal jelölt mezők kitöltése kötelező!
Azonosító név/E-mail cím* Azonosító és e-mail cím megegyező
E-mail cím*
(2009 március óta a regisztrált ügyfelek azonosító neve megegyezik az email címmel)
Ha az azonosítóját sem tudja megadni, kérjük, hívja az ügyfélszolgálati vonalat:
+36-62-452-833
×
1
2
3
Regisztráció
×
Regisztráció
Regisztrációja sikeresen megtörtént.
Megadott e-mail címére megerősítő e-mailt küldtünk. Ahhoz, hogy a regisztrációja véglegesedjen, és le tudja adni rendeléseit, kérjük, kattintson a levélben található linkre. A megerősítő link a kiküldéstől számított 48 óráig érvényes, ezután a regisztrációs adatok törlésre kerülnek.
Kérjük, jelölje meg az érdeklődési körébe tartozó témaköröket!
Mehet
×
Regisztráció
Az ön által megjelölt témakörök:
Temakor_1
Beállíthatja, hogy emailben értesítőt kapjon az újonnan beérkezett példányokról a bejelölt témaköröknek megfelelően.
Beállított értesítőit belépés után bármikor módosíthatja az Értesítő menüpont alatt:
létrehozhat új témaköri értesítőt
inaktiválhatja értesítőjét, ha éppen nem kíván a megadott témában értesítőt kapni
törölheti véglegesen az adott értesítőjét
szerkesztheti jelenlegi értesítőjét, ha még részletesebben szeretné megadni mi érdekli.
Az Ön választása alapján naponta vagy 3 naponta kap tőlünk emailt a beállított értesítőjéről.