Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:

Hasonló előadás


Az előadások a következő témára: "Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:"— Előadás másolata:

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}


Letölteni ppt "Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz tárgy honlap:"

Hasonló előadás


Google Hirdetések