| I. kötet - A kávé | |
| Útilap | |
| Bevezetés | 1 |
| Nyolc nap alatt a nyelv körül | 5 |
| Az első alkalmazás | 5 |
| Az első applet | 6 |
| Változók | 8 |
| Konstansok | 9 |
| Megjegyzések | 10 |
| Osztályok és objektumok | 11 |
| Metódusok és paraméterek | 12 |
| Megbízhatóság | 13 |
| Biztonság | 14 |
| AWT | 15 |
| Grafika | 16 |
| Párhuzamosság | 17 |
| Swing | 19 |
| Az alapok | 21 |
| Karatkerkészlet | 21 |
| Azonosítók | 22 |
| Egyszerű típusok | 23 |
| Literálok | 23 |
| Változódeklarációk | 24 |
| Tömbök | 25 |
| Operátorok | 26 |
| Típuskonverzió | 28 |
| Mező, metódus elérése | 31 |
| Vezérlés | 32 |
| Utasítások és blokk | 32 |
| Elágazások | 32 |
| Ciklusok | 34 |
| Feltétlen vezérlésátadás | 35 |
| Osztályok | 37 |
| Egy egyszerű példa | 37 |
| Példányváltozók | 37 |
| Metódusok | 40 |
| Objektumok használata | 44 |
| Hozzáférési kategóriák | 45 |
| Osztály szintű tagok | 47 |
| A főprogram | 49 |
| Konstruktorok | 50 |
| Inicializáló blokkok | 52 |
| Destruktor jellegű metódusok | 53 |
| Öröklődés | 54 |
| Interfészek | 62 |
| Az interfészak alapjai | 62 |
| Interfészek deklarizációja | 64 |
| Interfészek implementálása | 64 |
| Interfészek használata deklarációkban | 65 |
| Interfészek kiterjesztése | 65 |
| Az interfészekdeklaráció törzse | 66 |
| Interfészek használata | 71 |
| Csomagok | 73 |
| Csomagok elemei | 74 |
| A csomagok leképezése | 74 |
| Fordítási egység | 76 |
| Csomag létrehozása | 80 |
| Csomag névválasztása | 80 |
| A fejlesztői környezet csomagjai | 81 |
| Több fordítási egységet alkotó program kezelése | 81 |
| Kivételkezelés | 83 |
| A Java kivételkezelésének működése | 83 |
| A kivételkezelés alkalmazási köre | 84 |
| A kivételkezelés megvalósítása | 85 |
| Példa kivételkezelés megvalósítására | 90 |
| Kivételosztályok helye az osztályhierarchiában | 92 |
| A kivételkezelés előnyei | 93 |
| Java programok | 97 |
| Biztonság | 97 |
| Az appletek sajátosságai | 98 |
| Fordítás | 98 |
| Alkalmazások | 101 |
| Appletek | 104 |
| A java.lang csomag | 114 |
| Az Object osztály | 114 |
| A Comparable interfész | 117 |
| Elemi típusok osztályba csomagolás | 119 |
| Sztringkezelés | 122 |
| A Math és StrictMath osztályok | 131 |
| Rendszerszintű osztályok | 133 |
| Eszközök és nemzetközi programozás | 134 |
| A java.util csomag interfészei | 134 |
| A java.util csomag osztályai | 135 |
| Gyűjtemény Keretrendszer | 146 |
| Általános célú gyűjtemények és leképezések | 146 |
| Kiegészítő eszközök | 154 |
| Saját implementációk | 156 |
| Felhasználás programkönyvtárakban | 157 |
| A bemenet és a kimenet kezelése | 158 |
| Csatornák | 159 |
| Közvetlen elérésű fájlok | 180 |
| A File osztály: kapcsolat a fájlrendszerrel | 181 |
| Szövegfeldolgozás | 183 |
| A Java módosított UTF-8 formátuma | 187 |
| Tömörítés: a java.util.zip csomag | 187 |
| Példák gyakran előforduló feladatok megoldására | 188 |
| Melléklet: karakterkódolási szabványok | 192 |
| Beágyazott osztályok | 194 |
| Tagosztályok | 194 |
| Lokális és névtelen osztályok | 201 |
| Grafikus felhasználói felület | 206 |
| A felhasználói terület életciklusa | 207 |
| Eseményvezérelt programozás | 210 |
| Az AWT segédelemei | 223 |
| Grafikus komponensek | 228 |
| Elrendezési stratégiák | 234 |
| Fókuszkezelés | 250 |
| Felsőszintű AWT konténerek | 251 |
| AWT konténerek | 254 |
| AWT felülletelemek | 256 |
| AWT menük | 269 |
| Az AWT további lehetőségei | 274 |
| Párhuzamosság | 276 |
| Párhuzamosság a számítástechnikában | 276 |
| Szálak használata | 280 |
| Futásvezérlés | 289 |
| Szálak állapotai | 304 |
| Szinkronizáció | 307 |
| Visszatekintés | 317 |
| Appletek | 318 |
| Információ az appletről és paramétereiről | 318 |
| Grafikus felhasználói felület | 318 |
| Saját programszálak használata | 321 |
| Applet kommunikációja a böngészővel | 322 |
| Swing apletek | 345 |
| Java2D | 351 |
| Az 1.1-es Javával való kompatibilitás | 351 |
| Rajzolás a Graphics2D osztállyal | 352 |
| A Graphics2D attribútorai | 355 |
| Alakzatok | 361 |
| Szövegmegjelenítés | 364 |
| Színkezelés | 372 |
| Képkezelés | 375 |
| Nyomtatás | 383 |
| Angol-magyar szótár | 388 |
| Önelemzés | 390 |
| Bevezetés | 390 |
| Áttekintés | 390 |
| Egy rövid példa | 391 |
| Felderítés | 391 |
| Beavatkozás | 397 |
| Helyettesítés | 398 |
| Adatkonverzió | 401 |
| Biztonsági követelmények | 403 |
| Egy nagyobb példa | 404 |
| Hálózatkezelést támogatott alaposztályok | 408 |
| A hálózat modellje | 408 |
| A hálózati kapcsolat modellje | 410 |
| A hálózatkezelési osztályok | 413 |
| Összeköttetés-alapú kommunikáció Javában | 414 |
| Összeköttetés-mentes kommunikáció Javában | 415 |
| Kommunikációs végpont opciók | 416 |
| Hálózati kommunikációs bufferek mérete | 417 |
| Adatfolyam lezárásának jelzése | 418 |
| Internetcímek - A DNS tartomány-hierarchiája | 418 |
| Internetcímek kezelése | 420 |
| Több hálózati kártyával ellátott számítógépek | 420 |
| Csoportkommunikáció | 421 |
| A Java 2 biztonsági vonatkozásai | 422 |
| Kapcsolódás SOCKS hálózati tűzfalakhoz | 423 |
| Származtatás a hálózatkezelési osztályokból | 425 |
| Példaprogramok | 432 |
| Internet- és WWW-objektumok elérése | 451 |
| A HTTP protokoll és alkalmazásai | 458 |
| Az elért WWW erőforrások tartalma | 469 |
| HTML űrlapok működése - alapkép | 473 |
| Távoli metódushívás | 480 |
| A távoli metódushívás modellje | 481 |
| A távoli metódushívás eszközei | 482 |
| Távoli metódushívás Java környezetben | 487 |
| Egy távoli objektum implementációja | 489 |
| Paraméterátadás | 493 |
| A Java RMI viselkedése kommunikációs hibáknál | 494 |
| A kliens- és a szervercsonk összekapcsolása | 494 |
| A példaprogramunk befejezése | 499 |
| Távoli metódusok párhuzamos környezetben | 499 |
| Távoli objektumok osztott szemétgyűjtése | 501 |
| Távoli osztályok elérése | 503 |
| A példaprogramunk tesztelése | 505 |
| Visszatekintés a fejlesztés menetére | 507 |
| Távoli metódushívás hálózati tűzfalak mögött | 508 |
| Objektumok aktiválása | 509 |
| Egy példa: perzisztens naplózás | 519 |
| Egy összetettebb példa - tranzakciókezelés RMI felett | 523 |
| Egy elosztott szinkronizációs mechanizmus | 547 |
| A CORBA és a Java kapcsolata | 555 |
| A CORBA felépítése | 555 |
| Az Interface Definition Language (IDL) | 557 |
| Az IDL-Java leképezés | 559 |
| Példa a CORBA használatára | 563 |
| CORBA névszolgáltatás | 571 |
| További lehetőségek | 572 |
| A Java és a matematika | 574 |
| BigDemical osztály | 574 |
| BigInteger osztály | 576 |
| BigInteger osztály jelentősége: titkosítás | 577 |
| Biztonság | 590 |
| A Java biztonsági rendszerének felépítése | 592 |
| Jogosultságok | 594 |
| Biztonsági szabályok | 596 |
| A hozzáférést vezérlő mechanizmusok | 601 |
| Biztonságos osztálybetöltés | 606 |
| A biztonsági rendszer használata | 608 |
| Aláírt és őrzött objektumok | 609 |
| Kriptográfiai eszközök | 610 |
| Perzisztencia | 620 |
| A perzisztencia fogalma | 620 |
| Példa a perzisztencia megvalósítására | 622 |
| Az Objeck Serialization programozói interfész | 628 |
| Perzisztens mezők | 638 |
| Helyettesítés | 642 |
| Megjegyzések | 643 |
| Adatbázis-programozás | 644 |
| Két- és háromrétegű adatbázis-elérési modell | 644 |
| JDBC meghajtóprogramok | 645 |
| ODBC_JDBC | 646 |
| Továbbfejlesztési tervek | 647 |
| A JDBC használata | 647 |
| Meghajtóprogramok kezelése | 648 |
| Kapcsolattartás az adatbázissal | 648 |
| JDBC típusok | 651 |
| SQL utasítások végrehajtása | 660 |
| SQL utasítások kötegelt végrehajtása | 665 |
| Eredménytáblák kezelése | 667 |
| Példa | 672 |
| JavaBeans | 679 |
| Szoftver komponensek | 679 |
| BeanBox | 681 |
| Tulajdonságok | 685 |
| Beanek és az eseménykezelés | 696 |
| Testreszabás | 702 |
| Beanek a Java 2-ben | 709 |
| Kapcsolatok a helyiekkel | 710 |
| Egy kis magyarázkodás | 710 |
| Egy rövid példa | 710 |
| Felépítés | 712 |
| Sorolvasás | 719 |
| Tárgymutató | 726 |
| II. kötet - A hab | |
| Swing | |
| Modellek használata | 1 |
| Megjelenítés | 2 |
| A megjelenítés nyomkövetése | 3 |
| A megjelenítést vezérlő programszál | 4 |
| Megjelenítés stílusának megváltoztatása | 6 |
| Komponens-tulajdonságok állítása | 7 |
| Ikonok megjelenítése | 7 |
| Segítő technikák | 8 |
| Műveletek definiálása | 8 |
| A SwingTest példaprogram | 9 |
| Billentyűparancsok használata | 14 |
| Segédszövegek megjelenítése | 15 |
| Segédmetódusok gyűjteménye | 19 |
| Események | 19 |
| Időzítők használata | 19 |
| A Swing komponensek ősosztálya | 21 |
| Keretek használata | 21 |
| Fókuszkezelés | 26 |
| A legfelső Swing konténer | 27 |
| Felsőszintű Swing konténerek | 30 |
| Swing appletek | 31 |
| Ablakok | 31 |
| Belső ablakok | 32 |
| Párbeszédablakok | 34 |
| Konténerek | 45 |
| Elrendezési stratégiák | 46 |
| A legegyszerűbb konténer | 46 |
| Panel | 49 |
| Görgethető panel | 49 |
| Kettéosztható panel | 56 |
| Többoldalas panel | 59 |
| Többrétegű panel | 64 |
| Belső ablakokat tartalmazó panel | 65 |
| Segédeszköz panel | 71 |
| Swing felületelemek | 75 |
| Címke | 75 |
| Nyomógomb | 76 |
| Kétállapotú gomb | 78 |
| Kiválasztható gomb | 78 |
| Rádiógomb | 79 |
| Szövegmezők | 85 |
| Lista | 95 |
| Legördíthető lista | 98 |
| Táblázat | 106 |
| Fastruktúrák | 122 |
| Görgetősáv | 136 |
| Állapotjelző | 139 |
| Swing menük | 148 |
| Menüpontok | 148 |
| Menük | 151 |
| Az objektumorientált tervezés áttekintése | 158 |
| Bevezetés | 158 |
| Alapfogalmak | 159 |
| Mit tekintünk objektumnak? | 159 |
| Osztály | 159 |
| Kapcsolatok | 160 |
| Öröklődés | 161 |
| Többszörös és ismételt öröklődés | 162 |
| Programtervezés | 163 |
| Fő lépések | 163 |
| Analízis | 164 |
| Rendszertervezés | 173 |
| Osztálytervezés | 174 |
| Implementálás | 177 |
| Tervezési minták | 180 |
| Tervezési minták leírása | 181 |
| Sablonmetódus | 181 |
| Gyártó metódus | 183 |
| Iterátor | 185 |
| Toldalék | 187 |
| Homogén összetétel | 190 |
| Stratégia | 193 |
| Adapter | 197 |
| A Java nyelvről C++ programozóknak | 200 |
| Az objektummodellek különbözősége | 203 |
| Az egyes nyelvi elemek különbségéről | 205 |
| Absztrakció és paradigma | 206 |
| A main függvény | 206 |
| Kommentek | 207 |
| Előfordító | 207 |
| Fejállományok (headerek) | 208 |
| Primitív típusok | 209 |
| Mutatók, referenciák | 211 |
| Operátorok, kifejezések | 211 |
| Const | 213 |
| Argumentumok alapértelmezett értéke | 214 |
| Utasítások | 215 |
| Goto és címkék | 216 |
| Osztályok, interfészek és öröklődés | 216 |
| Hozzáférési kategóriák | 218 |
| Friend | 219 |
| Struktúrák | 220 |
| Felsorolási típus | 221 |
| Bitmezők, uniók | 222 |
| String | 224 |
| Hatókör operátor | 225 |
| Névterek (namespace) | 226 |
| RTTI, típuskényszerítések | 226 |
| Kivételkezelés | 228 |
| Template | 230 |
| A Java nyelvről Pascal programozóknak | 232 |
| A nyelvek összehasonlítása | 232 |
| A Java nyelv első látásra | 232 |
| Megjegyzések használata | 234 |
| A Java nyelv kulcsszavai | 234 |
| Vezérlési szerkezetek | 235 |
| Típusok, deklarációk | 236 |
| Kifejezések és operátorok | 238 |
| A Java nyelv mint objektumorientált nyelv | 240 |
| Objektumhivatkozások | 241 |
| Egységbezárás | 242 |
| Láthatóság | 242 |
| A Java nyelv új lehetőségei | 243 |
| Kiegészítések a biztonsághoz | 244 |
| Biztonsági konfigurációs fájl | 244 |
| Kulcsadatbázis | 245 |
| Kulcsadatbázis karbantartása (keytool) | 245 |
| JAR fájlok hitelesítése (jarsigner) | 247 |
| Biztonsági szabályzat | 248 |
| Biztonsági szabályzatok készítése (policytool) | 248 |
| Példa biztonsági szabályzatfájlra | 248 |
| Esettanulmány: aláírt applet | 249 |
| Az aláíró személyazonosságának elkészítése | 249 |
| Aláírt applet | 252 |
| Aláírt appletek használata | 253 |
| Jogosultságok és biztonsági kockázataik | 253 |
| java.security.AllPermission | 254 |
| java.awt.AWTPermission | 254 |
| java.io.FilePermission | 255 |
| java.net.NetPermission | 255 |
| java.util.PropertyPermission | 256 |
| java.lang.reflect.ReflectPermission | 256 |
| java.lang.RuntimePermission | 257 |
| java.security.SecurityPermission | 260 |
| java.io.SerializablePermission | 263 |
| java.net.SocketPermission | 263 |
| Kanonikus nevek és attribútumok a JCA-ban | 264 |
| JavaScript | 266 |
| JavaScript beágyazása | 266 |
| A JavaScript nyelv leírása | 268 |
| Kliensoldali JavaScript | 287 |
| LiveConnect: JavaScript - Java kommunikáció | 340 |
| Biztonság | 347 |
| package netscape.javascript | 361 |
| package netscape.plugin | 362 |
| package netscape.security | 363 |
| Mobil szoftverrendszerek | 368 |
| Alkalmazási lehetőségek, a mobil modell előnyei | 368 |
| Alapfogalmak | 370 |
| Architektúra | 370 |
| Mobilitási és migrációs osztályok | 370 |
| A mobil alkalmazások absztrakt modelljei | 372 |
| A mobil ágensek életciklusa | 373 |
| Kommunikáció mobil rendszerekben | 374 |
| Biztonsági kérdések | 375 |
| Megoldási módszerek | 376 |
| Mobil fejlesztői eszközök | 377 |
| Aglets | 377 |
| D'Agents | 379 |
| Jumping Beans | 379 |
| Voyager | 380 |
| A mobil rendszerek hatékonyságáról | 381 |
| Egy példaprogram | 382 |
| Java alapú intelligens kártya | 386 |
| Vissza a gyökerekhez: az eszközbe épített Java | 386 |
| Visszatekintés és felhasználási területek | 386 |
| A kezdetektől a Java kártyáig | 387 |
| Felépítés, működés, szerepek | 389 |
| A biztonság | 390 |
| Kommunikáció a kártyával | 391 |
| A kártya fájlszerkezete | 393 |
| A kriptológia szerepe | 393 |
| A biometria szerepe | 394 |
| Java kártya | 394 |
| A Java kártya jelentősége más rendszerekben | 396 |
| A Java kártya 2.1.1-es szabványa | 397 |
| Az alapcsomagok | 398 |
| Tűzfalak, kontextusok, objektumok megosztása | 402 |
| A virtuális gép életciklusa | 403 |
| Az applet (cardlet) életciklusa | 404 |
| Perzisztencia | 404 |
| Hello World a Java kártyán | 406 |
| Java3D | 408 |
| Bevezetés | 408 |
| A háromdimenziós számítógépes grafikáról | 409 |
| Háromdimenziós szerelőszalag | 409 |
| Transzformációk | 412 |
| A Java3D felépítése | 414 |
| Színtér-gráf | 414 |
| Rederelési modellek | 416 |
| Megjelenítési modellek | 417 |
| A Java3D programozásról | 418 |
| Kezdetek: HelloUniverse alkalmazás | 419 |
| Térbeli alakzatok elhelyezése és attribútumai | 423 |
| 3D-s testek: Shape3D, GeometryArray | 423 |
| 3D-s szöveg: Text3D | 431 |
| 3D-s megjelenés: Appearance | 431 |
| Transzformációk | 435 |
| Textúrázás | 438 |
| A színtér-gráf rendszerezése | 441 |
| Csoportok: a Group csomópont | 441 |
| Osztott részgráfok | 443 |
| Kirajzolási alternatívák | 444 |
| Raster | 444 |
| A Java3D nézet modell programozása | 445 |
| Színtér elemek viselkedése | 447 |
| Viselkedési modell: Behavior csomópont | 447 |
| Interpolátorok | 450 |
| Különleges Behavior osztályok | 452 |
| Morph | 453 |
| Interakció a színtérrel | 454 |
| Kijelölés: Pick | 454 |
| Input eszközök | 455 |
| A virtuális világ további elemei | 456 |
| Fényforrások | 456 |
| Háttér | 459 |
| Köd | 459 |
| Java3D hangforrások | 462 |
| Akusztikus jellemzők | 465 |
| A VecMath csomag | 466 |
| Szójegyzék | 467 |
| Servletek | 469 |
| Servlet fejlesztőkörnyezet | 469 |
| Fordítás | 470 |
| Futtatás | 470 |
| Egy servlet életciklus | 470 |
| Servlet példányosítása | 470 |
| Servletparaméterek | 471 |
| Kliens kiszolgálása | 471 |
| Servlet megszüntetése | 474 |
| 1. példa: a LifeTestServlet servlet | 474 |
| Információ a servletről | 480 |
| Információ megőrzése több klienskapcsolat alatt | 480 |
| Cookie-k használata | 481 |
| 2. példa: a CookiTestServlet servlet | 482 |
| Klienskapcsolat követése a szerveren | 484 |
| 3. példa: a SessionTest Servlet servlet | 486 |
| Servletközi kommunikáció | 487 |
| 4. példa: a ContextTestServlet servlet | 488 |
| A Jini kezdeményezés | 491 |
| Szolgáltatások | 492 |
| Felderítés (Discovery) | 493 |
| Kikeresés (Lookup) | 495 |
| Regisztráció | 496 |
| Távoli események | 497 |
| Tranzakciók | 498 |
| Biztonság | 498 |
| A Jini és más nyelvek | 498 |
| MiniSQL adatbázisok elérése | 500 |
| Egy példaadatbázis létrehozása | 501 |
| Egy egyszerű Mini SQL alkalmazás | 501 |
| Kapcsolatfelvétel MiniSQL adatbázissal | 503 |
| Az adatbázisok és az SQL | 504 |
| Adattáblák létrehozása | 506 |
| Adattáblák lekérdezése | 506 |
| Sorok törlése | 507 |
| Sorok beszúrása | 508 |
| Sorok módosítása | 508 |
| Implementációs és tervezési feladat | 508 |
| Az OMG IDL nyelv módosított BNF nyelvtana | 511 |
| Java fejlesztőkörnyezetek | 515 |
| Szempontok | 515 |
| Vizsgált fejlesztőkörnyezet | 515 |
| Visual J++ 6.0 | 516 |
| JBuilder 4.0 | 516 |
| JDeveloper 3.0 | 517 |
| Forte for Java 2.0 | 518 |
| VisualCafé 4.0 | 519 |
| VisualAge for Java 3.5 | 519 |
| PowerJ 3.6 | 520 |
| Memóriakezelés | 523 |
| A memóriakezelési és -hivatkozási modell | 523 |
| Típuskényszerítések és az "instanceof"operátor | 525 |
| A class-fájlok betöltéskori ellenőrzéséről | 525 |
| Tömbök | 527 |
| Paraméterátadás metódushíváskor | 531 |
| A "void" és a függvénymutatók | 532 |
| Erős elérhetőség és a szemétgyűjtő mechanizmus | 534 |
| Gyenge hivatkozások és referencia-objektumok | 536 |
| A java.lang.ref csomag nyilvános osztályai | 537 |
| Értesítés | 538 |
| A ReferenceQueue osztály metódusai | 538 |
| A Reference osztály metódusai | 539 |
| A gyenge referencia háromféle erősségét kezelő osztályok metódusai | 539 |
| A java.util.WeakHashMap osztály | 540 |
| A virtuális gép memóriafelhasználása | 541 |
| JVM: Java Virtuális Gép | 543 |
| A JVM jellemzői | 543 |
| A JVM felépítése | 544 |
| Egy .class fájl formátuma | 545 |
| Utasítások | 556 |
| Példa | 559 |
| A Java virtuális gép gépi utasításainak kódjai | 560 |
| Esettanulmány Java nyelven | 562 |
| A felhasználói felület váza (1. lépés) | 562 |
| A kliens első változata (2. lépés) | 564 |
| A szerver első változata (3. lépés) | 566 |
| A kliens felületének újabb változata (4. lépés) | 568 |
| Több klienst kiszolgáló szerver (5. lépés) | 569 |
| A kapcsolat protokollja (6. lépés) | 570 |
| A protokollt kezelő szerver (7. lépés) | 572 |
| A protokollt kezelő kliens (8. lépés) | 573 |
| A végleges kliens (9. lépés) | 575 |
| Csevegőprogram Java nyelven | 579 |
| A program felhasználói felülete | 579 |
| A kliensoldali kommunikációs objektum | 587 |
| A szerveroldal megvalósítása | 589 |
| A program futtatása és tesztelése | 597 |
| Irodalomjegyzék | 599 |
| Tárgymutató | 606 |