Ú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 |