Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaVilmos Fülöp Megváltozta több, mint 10 éve
1
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html
2
A mai előadás tartalma: Miért pont Java? Hello World! Fordítás Szemétgyűjtő Java nyelv alapjai adattípusok változók operátorok vezérlő szerkezetek
3
Miért pont Java? I. Egyszerű Magas szintű, objektum orientált Biztonságos, robusztus erősen tipizált nyelv Platform független, hordozható “Java: A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture neutral, portable, high- performance, multithreaded, dynamic language.” The Java Language: An Overview – java.sun.com
4
Miért pont Java? II. Interpretált, dinamikus virtuális gép class loader byte kód Többszálú elosztott rendszerek
5
Hello World! /* Hello World! */ class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); } ClassLoader() Ellenőrzés Memória foglalás A hivatkozott osztályok betöltése Inicializálás main metódus meghívása
6
Fordítás JVM Java API program file: osztaly.java compiler: `javac osztaly.java` bytekód: osztaly.class interpreter: `java osztaly`
7
JAR file-ok Segítségükkel több file-t egy archívumba pakolhatunk Tipikusan egy alkalmazás class file-jait tartalmazza Az így csomagolt alkalmazás futtatható közvetlenül, appletként, az osztályai hozzáférhetőek Előnyei: biztonságos rövid letöltés tömörítés hordozhatóság
8
Java komponensek – JDK 1.4
9
Java komponensek – JDK 5.0
10
Szemétgyűjtő (Garbage Collector) egyik legfontosabb szolgáltatás mérőszámai: Szünet időtartam Szünet megjósolhatóság Memória használat CPU használat Virtuális memória kezelés Cache kezelésű
11
Java nyelv alapok adattípusok változók operátorok vezérlő szerkezetek osztályok interfészek RTTI reflexió alap objektumok csomagkezelés
12
Változók – adattípusok
13
Primitív adattípusok C++ boolean: 1, 0 nincs! szigorú szabályok a byte-okra (platform függetlenség) standard default értékek (platform függetlenség) nincs unsigned! string mindig objektum (String)
14
Wrapper (csomagoló) osztályok Minden primitív adattípusnak van csomagoló osztálya Segítségükkel a primitív típusokat is objektumként kezelhetjük Boolean, Integer, …
15
Változók Minden változóhoz típust és nevet kell rendelnünk. A változók nevét kicsi betűvel kezdjük, a több szóból álló változókat a szóhatárnál nagybetűvel választjuk el. bool isVisible; az aláhúzást mindenhol használhatjuk de csak a konstansokban szokás az utasítások végén ; Létrehozáskor az alapértelmezett érték: 0 0.0 False /U0000 null
16
Példa public class MaxVariablesDemo { public static void main(String args[]) { byte largestByte = Byte.MAX_VALUE; short largestShort = Short.MAX_VALUE; int largestInteger = Integer.MAX_VALUE; long largestLong = Long.MAX_VALUE; float largestFloat = Float.MAX_VALUE; double largestDouble = Double.MAX_VALUE; char aChar = 'S'; boolean aBoolean = true; System.out.println("The largest byte value is " + largestByte); … }
17
Operátorok különbözô értékadások = += -= *= /= %= ^= &= |= >= >>>= feltételes kifejezés ? : logikai OR || logikai AND && bitenkénti OR | bitenkénti XOR ^ bitenkénti AND & egyenlô, nem egyenlô == != összehasonlítások >= <= bitenkénti léptetések > >>> összeadás, kivonás + - szorzás, osztás, moduló * / % új egyed létrehozása new (type)expression (pre- vagy poszt-) inkremens és dekremens, logikai és bitenkénti negálás, típus ellenôrzés ++ - - ! ~ instanceof zárójelek, indexelés, osztály komponensére hivatkozás () []. nincs sizeof() van instanceof
18
Vezérlő szerkezetek I. ciklusok: while do-while for döntési pontok: if-else switch-case while (kifejezés) { utasítások } do { utasítások } while (kifejezés); for (inicializálás; befejezés; növekmény) { utasítások } if (feltétel) { utasítás ha teljesül} else { utasítás ha nem teljesül } switch (változó(csak int)) { case érték1: utasítás1; break; case érték2: utasítás2; break; default: utasítás; }
19
Vezérlő szerkezetek II. kivétel kezelés: try-catch-finally elágazás break (kilép) continue (ellenőrzi a feltételt) return (kilép a metódusból) try { utasítások } catch (kivétel neve) { utasítások} finally { utasítások}
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.