| Útilap | |
| Tartalomjegyzék | |
| Bevezetés | 1 |
| Kilenc oldal alatt a nyelv körül | 4 |
| Az első alkalmazás | 4 |
| Az első applet | 5 |
| Változók | 7 |
| Konstansok | 8 |
| Megjegyzések | 8 |
| Osztályok és objektumok | 9 |
| Metódusok és paraméterek | 11 |
| Amiről még szó lesz | 12 |
| Az alapok | 13 |
| Karakterkészlet | 13 |
| Azonosítók | 14 |
| Egyszerű típusok | 14 |
| Literálok | 14 |
| Objektumok | 15 |
| Logikai értékek | 15 |
| Egész számok | 15 |
| Lebegőpontos számok | 15 |
| Karakterek | 15 |
| Szövegek | 16 |
| Változódeklarációk | 16 |
| Tömbök | 16 |
| Többdimenziós tömbök | 17 |
| Kezdeti érték | 17 |
| Operátorok | 17 |
| Postfix operátorok | 18 |
| Prefix operátorok | 18 |
| Objektum létrehozása, típuskényszerítés | 18 |
| Multiplikatív operátorok | 18 |
| Additív operátorok | 19 |
| Léptető műveletek | 19 |
| Összehasonlítások | 19 |
| Egyenlőségvizsgálatok | 19 |
| Bitenkénti műveletek | 19 |
| Logikai műveletek | 19 |
| Feltételes kifejezés | 19 |
| Értékadások | 19 |
| Típuskonverzió | 20 |
| Automatikus konverzió | 20 |
| Explicit konverzió | 20 |
| Szövegkonverzió | 21 |
| Mező, metódus elérése | 22 |
| Vezérlés | 23 |
| Utasítás és blokk | 23 |
| Elágazások | 23 |
| Egyszerű elágazás | 23 |
| Összetett elágazás | 24 |
| Ciklusok | 24 |
| Elöltesztelő ciklus | 25 |
| Hátultesztelő ciklus | 25 |
| A for-ciklus | 25 |
| Feltétlen vezérlésátadás | 25 |
| Címkék | 25 |
| A break utasítás | 26 |
| A continue utasítás | 26 |
| Visszatérés | 26 |
| Goto? | 26 |
| Osztályok | 27 |
| Egy egyszerű példa | 27 |
| Példányváltozók | 29 |
| Változók deklarációja | 29 |
| Változók használata | 30 |
| Metódusok | 30 |
| Metódusok definíciója | 30 |
| Metódusok meghívása | 31 |
| A this pszeudováltozó | 32 |
| Metódusnevek túlterhelése | 33 |
| Fordítás közbeni adatfolyam-ellenőrzés | 33 |
| Objektumok használata | 34 |
| Hozzáférési kategóriák | 35 |
| Félnyilvános tagok | 36 |
| Nyilvános tagok | 36 |
| Privát tagok | 37 |
| Leszármazottban hozzáférhető tagok | 37 |
| Statikus tagok | 37 |
| Osztályváltozók | 38 |
| Osztálymetódusok | 39 |
| A főprogram | 39 |
| Konstruktorok | 40 |
| Konstruktorok definíciója | 41 |
| Példányosítás paraméterekkel | 42 |
| Inicializáló blokkok | 42 |
| Destruktor jellegű metódusok | 43 |
| Öröklődés | 44 |
| Osztály kiegészítése új tagokkal | 44 |
| A konstruktorok és az öröklődés | 45 |
| Polimorfizmus | 46 |
| Példánymetódusok felüldefiniálása | 46 |
| Osztálymetódusok elfedése | 47 |
| Változók elfedése | 48 |
| A protected hozzáférési kategória | 48 |
| Az osztályhierarchia | 48 |
| Absztrakt osztályok és metódusok | 48 |
| Végleges osztályok és metódusok | 50 |
| Kivételkezelés | 51 |
| A Java kivételkezelésének működése | 51 |
| Kivétel keletkezése | 51 |
| Megfelelő kivételkezelő keresése | 52 |
| A kivételkezelés alkalmazási köre | 52 |
| A kivételkezelés megvalósítása | 53 |
| A kivétel kiváltása | 53 |
| A kivétel elkapása | 54 |
| A kivétel specifikálása | 57 |
| Példa kivételkezelés megvalósítására | 58 |
| Kivételosztályok helye az osztályhierarchiában | 59 |
| A kivételkezelés előnyei | 61 |
| A hibát kezelő kód jól elkülönül a tényleges kódtól | 61 |
| A hiba könnyen eljut arra a helyre, ahol azt kezelni kell | 62 |
| A hibatípusok csoportosítása | 64 |
| Interfészek | 65 |
| Az interfészek alapjai | 65 |
| Interfészek kiterjesztése | 67 |
| Interfészek implementálása | 67 |
| Interfész használata deklarációban | 68 |
| Interfész deklarációja | 68 |
| Interfész-módosítók | 68 |
| Kiterjesztett interfészek | 69 |
| Az interfésztörzs | 69 |
| Interfészek használata | 74 |
| Csomagok | 76 |
| Csomagelemek | 76 |
| Alapcsomagok | 76 |
| Típusok | 76 |
| A csomagok leképezése | 77 |
| Fájlrendszerben tárolt csomagok | 77 |
| Adatbázisban tárolt csomagok | 78 |
| Fordítási egység | 78 |
| Csomagdeklaráció | 78 |
| Importdeklarációk | 79 |
| Típusdeklarációk | 81 |
| Csomag létrehozása | 81 |
| Csomag névválasztása | 82 |
| Alapvető csomagok a fejlesztői környezetben | 82 |
| Java programok | 83 |
| Biztonság | 83 |
| Az appletek előnyei | 84 |
| Az appletek hátrányai | 84 |
| Fordítás | 84 |
| .java forrásfájlok | 85 |
| .class bájtkód fájlok | 85 |
| Alkalmazások | 86 |
| Futtatás | 86 |
| Paraméterátadás | 86 |
| Program befejezése | 86 |
| Grafikus felhasználói felület | 86 |
| Kommunikáció az operációs rendszerrel | 87 |
| 1. példa: a Params alkalmazása | 87 |
| Appletek | 88 |
| Applet beágyazása | 88 |
| Paraméterátadás | 90 |
| Futtatás | 90 |
| Egy applet életciklusa | 91 |
| 2. példa: a LifeStile alkalmazás/applet | 92 |
| A java.lang csomag | 96 |
| Az Object osztály | 96 |
| Elemi típusok osztályba csomagolása | 99 |
| Az Integer osztály | 100 |
| Numerikus konstansok | 102 |
| Sztringkezelés | 103 |
| A String osztály | 103 |
| A StringBuffer osztály | 109 |
| A Math osztály | 111 |
| Rendszerszintű osztályok | 113 |
| A java.util csomag | 114 |
| A java.util csomag interfészei | 114 |
| Az Enumeration interfész | 114 |
| Az Observer interfész | 115 |
| A java.util csomag osztályai | 115 |
| Az Observable osztály | 115 |
| A BitSet osztály | 116 |
| Dátum- és időkezelés | 117 |
| Szótárak, hashtáblák, jellemzők | 118 |
| Adaptáció a környezethez | 119 |
| A Random osztály | 122 |
| A Stack osztály | 122 |
| A StringTokenizer osztály | 122 |
| A Vector osztály | 122 |
| A java.io csomag | 123 |
| Csatornák | 123 |
| Leképezés fizikai adatszerkezetekre | 126 |
| Szűrők | 129 |
| Véletlen elérésű fájlok | 134 |
| Szövegfeldolgozás | 134 |
| Kapcsolat a fájlrendszerrel | 137 |
| A Java módosított UTF-8 formátuma | 138 |
| Párhuzamosság | 139 |
| Szálakról általában | 139 |
| Mi is az a szál? | 139 |
| Párhuzamosság és erőforrás-használat | 139 |
| Mikor használjunk szálakat? | 140 |
| Szálak használata | 140 |
| Hogyan készítsünk szálakat? | 140 |
| Futás vezérlés | 142 |
| Démon szálak | 144 |
| Szálcsoportok | 145 |
| Szálak állapotai | 147 |
| Futtatható állapot | 147 |
| Nem futtatható állapot | 147 |
| Halott állapot | 147 |
| Állapotok lekérdezése | 148 |
| Ütemezés | 148 |
| Szálak prioritása | 149 |
| Időosztás a Java-ban | 150 |
| Szinkronizáció | 151 |
| Kölcsönös kizárás | 151 |
| Szinkronizáció üzenetekkel | 153 |
| Gyors áttekintés | 156 |
| Egy egyszerű példa | 157 |
| Egyebek | 160 |
| Hálózati alkalmazások készítése | 162 |
| A hálózat modellje | 162 |
| A hálózati kapcsolat modellje | 164 |
| Összeköttetés-alapú kapcsolatok | 164 |
| Összeköttetés-mentes kapcsolatok | 165 |
| A kommunikáció további kérdései | 166 |
| A hálózatkezelési osztályok | 167 |
| Összeköttetés-alapú kommunikáció a Java-ban | 167 |
| Összeköttetés -mentes kommunikáció a Java-ban | 169 |
| Kommunikációs végpont opciók | 170 |
| Internet címek kezelése | 171 |
| Több hálózati kártyával ellátott számítógépek | 171 |
| Csoport kommunikáció | 172 |
| Példaprogramok | 174 |
| Összeköttetés-alapú szerver alkalmazás | 174 |
| Összeköttetés-alapú kliens alkalmazás | 176 |
| Összeköttetés-mentes szerver alkalmazás | 178 |
| Összeköttetés-mentes kliens alkalmazás | 180 |
| Internet- és WWW-objektumok elérése | 181 |
| Az URL osztály | 181 |
| Az URLConnection osztály | 184 |
| Távoli metódushívás alapjai | 187 |
| A java.awt csomag | 188 |
| A grafikus felület | 188 |
| A felület felépítése | 189 |
| A felület megjelenítése | 189 |
| Konténer osztályok | 189 |
| Komponens osztályok | 194 |
| Menükezelés | 201 |
| Eseménykezelés | 205 |
| Eseménykezelés alapjai | 205 |
| Eseménykezelés az 1.0-ban | 206 |
| Eseménykezelés az 1.1-ben | 209 |
| Appletek | 215 |
| Információ az appletről és paramétereiről | 215 |
| Grafikus felhasználói felület | 215 |
| Appletre vonatkozó grafikus megszorítások | 216 |
| 1. példa: a PaintTest applet | 216 |
| Saját Thread-ek használata | 219 |
| Applet kommunikációja a böngészővel | 219 |
| Applet címerének lekérdezése | 219 |
| Kép/hang kezelés | 220 |
| Új oldal megjelenítése | 221 |
| Böngésző státuszsorának használata | 221 |
| 2. példa: a BrowserTest applet | 221 |
| Kommunikáció a HTML oldal appletjeivel | 233 |
| 3. példa: a GetAppletTest applet | 233 |
| Appletek biztonsági megkötései | 236 |
| 4. példa: a SecurityTest alkalmazás/applet | 237 |
| Perzisztencia | 241 |
| A perzisztencia fogalma | 241 |
| Példa a perzisztencia megvalósítására | 243 |
| Az Object Serialization programozói interfész | 249 |
| Verziók | 253 |
| Biztonsági megfontolások | 254 |
| Példa szerializáció használatára | 255 |
| Adatbázis-programozás | 258 |
| Két- és háromrétegű adatbáziselérési modell | 258 |
| JDBC-meghajtóprogramok | 258 |
| JDBC-nek megfelelő meghajtóprogramok | 259 |
| ODBC-JDBC | 259 |
| Továbbfejlesztési tervek | 260 |
| A JDBC használata | 260 |
| JDBC használata appletekben | 260 |
| Fordítás | 261 |
| Futtatás | 261 |
| Meghajtóprogramok kezelése | 261 |
| A meghajtóprogram kiválasztása | 261 |
| Meghajtóprogramok regisztrálása | 261 |
| Kapcsolattartás az adatbázissal | 262 |
| Adatbázis-URL-ek | 262 |
| Kapcsolat felvétele | 262 |
| Tranzakciókezelés | 263 |
| Információ a kapcsolatról | 263 |
| Hibakazelés | 264 |
| Kapcsolat lezárása | 264 |
| JDBC típusok | 264 |
| Az SQL típus megállapítása | 264 |
| Az SQL típusok Java megfelelői | 265 |
| Java típusok SQL megfelelői | 267 |
| SQL utasítások végrehajtása | 268 |
| A Statement interfész | 268 |
| A PreparedStatement interfész | 270 |
| A CallableStatement interfész | 271 |
| Eredménytáblák kezelése | 272 |
| Sorok és kurzorok | 273 |
| Oszlopok | 273 |
| Eredménytábla lezárása | 273 |
| Példa | 273 |
| CORBA | 280 |
| A CORBA felépítése | 280 |
| Az IDL és a Java | 281 |
| Példa a CORBA használatára | 287 |
| További lehetőségek | 295 |
| Esettenulmány Java nyelven | 297 |
| A felhasználói felület váza (1. lépés) | 297 |
| A kliens első változata (2. lépés) | 299 |
| A szerver első változata (3. lépés) | 301 |
| A kliens felületének újabb változata (4. lépés) | 303 |
| Több klienst kiszolgáló szerver (5. lépés) | 304 |
| A kapcsolat protokollja (6. lépés) | 305 |
| A protokollt kezelő szerver (7. lépés) | 306 |
| A protokollt kezelő kliens (8. lépés) | 308 |
| A végleges kliens (9. lépés) | 310 |
| Referencia | 313 |
| package java.applet | 314 |
| package java.awt | 317 |
| package java.awt.event | 347 |
| package java.io | 353 |
| package java.lang | 381 |
| package java.net | 402 |
| package java.sql | 412 |
| package java.util | 438 |
| Az objektumorientált tervezés áttekintése | 451 |
| Bevezetés | 451 |
| Alapfogalmak | 452 |
| Mit tekintünk objektumnak? | 452 |
| Osztály | 452 |
| Kapcsolatok | 453 |
| Öröklődés | 454 |
| Többszörös és ismételt öröklődés | 455 |
| Programtervezés | 456 |
| Fő lépések | 456 |
| Analízis | 457 |
| Rendszertervezés | 466 |
| Osztálytervezés | 467 |
| Implementálás | 470 |
| A Java nyelvről Pascal programozóknak | 473 |
| A Java és a Pascal programozási nyelvek összehasonlítása | 473 |
| A Java nyelv első látásra | 473 |
| Megjegyzések használata | 475 |
| A Java nyelv kulcsszavai | 475 |
| Vezérlési szerkezetek | 476 |
| Típusok, deklarációk | 477 |
| Kifejezések és operátorok | 479 |
| A Java nyelv, mint objektum-orientált nyelv | 481 |
| Objektumhivatkozások | 482 |
| Egységbezárás | 483 |
| Láthatóság | 483 |
| A Java nyelv új lehetőségei | 484 |
| JavaScript | 485 |
| JavaScript beágyazása | 485 |
| A <Script> HTML kulcsszó | 486 |
| Eseménykezelők | 486 |
| JavaScript nyelv leírása | 487 |
| Függvények | 487 |
| Objektum modell | 488 |
| Típusok | 489 |
| Operátorok | 489 |
| Azonosítók | 490 |
| Változók | 490 |
| Utasítások | 490 |
| Megjegyzések | 490 |
| Hibakezelés | 490 |
| Beépített JavaScript objektumtípusok | 491 |
| Böngésző - JavaScript kommunikáció | 491 |
| A böngésző JavaScript objektumai | 491 |
| JavaScript színkonstansok | 492 |
| 1. példa: dinamikus HTML generálás | 492 |
| 2. példa: cookie-k használata | 494 |
| 3. példa: interaktív JavaScript végrehajtás | 495 |
| 4. példa: interaktív dokumentumbetöltés és vezérelt hipertext hivatkozás | 496 |
| LiveConnect: JavaScript - Java kommunikácó | 497 |
| Java elérése JavaScript-ből | 497 |
| JavaScript elérése Java-ból | 498 |
| 5. példa: applet vezérlése és HTML formok kilistázása | 499 |
| package netscape.javascript | 502 |
| Beágyazott osztályok | 503 |
| Tagosztályok | 503 |
| Statikus tagosztályok, külső szintű és belső osztályok | 503 |
| Nem statikus tagosztályok | 504 |
| Nem statikus tagosztály kiterjesztése | 505 |
| Lokális osztályok | 506 |
| Névtelen osztályok | 507 |
| JavaBeans | 509 |
| Bevezetés | 509 |
| A komponensmodellről | 509 |
| A komponensmodell részei | 509 |
| A komponensmodell szolgáltatásai | 510 |
| Osztott futtatási környezet | 511 |
| A JavaBeans rövid ismertetése | 511 |
| A JavaBeans, mint komponensmodell | 511 |
| A JavaBeans alapjai | 512 |
| Lehetséges felhasználási forgatókönyvek | 513 |
| Néhány egyszerű bean | 514 |
| Első bean-ünk | 514 |
| Egyszerű, tulajdonságokkal rendelkező bean | 515 |
| Más komponens által változtatható bean | 516 |
| Tulajdonságának megváltozását jelző bean | 517 |
| A kifejlesztett komponens felhasználása | 518 |
| JVM: Java Virtuális Gép | 523 |
| A JVM jellemzői | 523 |
| A JVM felépítése | 524 |
| Egy .class fájl formátuma | 525 |
| Utasítások | 536 |
| Példa | 539 |
| A Java virtuális gép gépi utasításainak kódjai | 540 |
| Programmelléklet az esettanulmányhoz | 542 |
| Az 1. program | 542 |
| A 2. program | 544 |
| A 3. program | 547 |
| A 4. program | 548 |
| Az 5. program | 551 |
| A 6. program | 553 |
| A 7. program | 559 |
| A 8. program | 564 |
| Irodalomjegyzék | 572 |
| Tárgymutató | 574 |