SlideShare a Scribd company logo
A Java megismerese 
● Java története 
● NETBEANS telepítése, megismerése 
● Programozási alapok JAVA nyelven 
● Változók, primitív típusok 
Készítette: Nagy Balázs Tamás
Telepítés, beállítás 
● JDK (Java Development Kit) 
● Környezeti változó beállítása 
– Számítógép/Tulajdonságok/Környezeti 
változók/Advanced 
– Path után c:Program Filesjavajdk???bin 
● Kódolás 
– Akár jegyzettömb 
– Netbeans / Eclipse
●Java története 
● Sun Microsystems - James Gosling 1990 
● Cél: intelligens eszközök megírása 
– Interaktív TV, hűtő, sötő, katonai műhold... 
● Eredetileg Oak név 
● WWW népszerűsége nő 
– Átírták a nyelvet → webalkalmazások biztonságos 
futtatása 
– Új név: Java 
● 1995 Java 1.0 
● 2006 nov. 13 java nagy része GPL licenc alá
Miért jó? 
● Internetes programok (applet) 
● Teljesen objektumorientált 
● Platformfüggetlen 
– C++, Pascal Write Once, Compile Anywhere 
– Write Once, Run Anywhere 
● Platformfüggetlen bájtkód → JVM 
● Egyszerű 
● Biztonságos → nyilvános jelkulcsú titokítás 
● Jó hibakijelzés 
● Többszálúság
Hello 
● Hello World → Elso.java 
● javac Elso.java 
● java Elso 
public class A{ 
/** 
* Az első programom 
* Kiírja, hogy 'Hello World' 
*/ 
public static void main(String[]args){ 
System.out.println("Hello World");// Hello World 
kiírása 
} 
}
Komment 
● A fordító nem értelmezi 
● Fejlesztőknek segítség 
● Dokumentációkellék 
● Fajtái 
– Dokumentáció 
– Több soros komment 
– Egysoros komment 
/** 
* Az első programom 
* Kiírja, hogy 'Hello World' 
*/ 
/* Az első programom 
Kiírja, hogy 'Hello World'*/ 
// Hello World kiírása
Működés 
Application Programming Interface: 
● Előre elkészített programrészletek 
● Osztályok, interfészek package-kben 
● pl.: fájlkezeléshez, grafikus 
programokhoz
Programozási alapok 
● Objektum/Osztály pl. monitor 
– Állapota/tulajdonsága van (mező, változó): pl.: színe, 
mérete 
– Csinál valamit (tagfüggvény, művelet): pl.: világít 
● Konvenciók 
– Számít a kis és a nagy betű 
– Osztály nevének nagy kezdőbetű 
– Tagfüggvényeknek kis kezdőbetű 
– Fájlnév megegyezik az osztálynévvel 
– main függvény fog lefutni
Adjunk össze! 
● Három int változó 
● Harmadikban az eredmény, amit kiírunk 
public class B { 
public static void main(String[] args) { 
int a = 2; 
int b = 3; 
int c = a + b; 
System.out.println(c); 
} 
}
Típusok 
● Statikus típusosság: deklarálás előtt értéket kell adni a 
típusnak 
– int valasz = 42; 
● Egész szám típusú változó 
– Meghatározza a műveleteket 
● Változó neve: valasz 
● Változó értéke 
● Primitív típusok 
– Java-ba beépített típusok 
– Kis betű 
– Nem osztályból készített objektumok
Primitív típusok 
● byte – 8 bites előjeles egész -128→127 
● short – 16 bites előjeles egész -32.768→32767 
● int – 32 bites előjeles egész -231→231-1 
● long - 64 bites előjeles egész -263→263-1 
● float – 32 bites valós 
● double – 64 bites valós 
● boolean – true/false (nem 1 bitet foglal) 
● char – 16 bites Unicode karakter
Szöveg 
String sz1 = "Hello "; 
String sz2 = "World"; 
String sz3 = sz1 + sz2; 
System.out.println(sz3); 
● Miért nagy S? 
● Valójában nem primitív, de sok tekintetben úgy használjuk 
– Direktben kap értéket 
● == operátor nem működik
Adjunk össze kicsit másképp 
● Típusosság 
● Típuskényszerítés 
public class D { 
public static void main(String[] args) { 
int a = 2; 
double b = 3; 
int c = a + (int)b; 
System.out.println(c); 
} 
}
Műveletek 
● Művelet azonos típusú elemek között 
– Egész műveletei: + - * / % 
– Valós műveletei: + - * / 
● Végezd el a műveleteket! (Negyedik.java) 
● Művelet valós és egész között?
Operátorok 
● Alapműveletek operátorai 
– + összead két számot, szövegeket összefűz 
– - különbséget képez két számból 
– * két szám szorzatát képzi 
– / osztás valós esetén, egészrész egészek esetén 
● További matematikai műveletek 
– % maradék (pl.: 15 % 4 → 3) 
– ++ eggyel növel (pl.: i++ ha I 3 volt, akkor 4 lesz) 
● Egyenlők 
– = értékadás 
– == egyenlőség ellenőrzése (pl.: 3 == 4 az hamis)
Konzol 
● Függvények az API részei 
● Kiírás konzolra 
– System.out.println(„Amit ki akarok írni”) 
● Beolvasás konzolról 
– Scanner in = new Scanner(System.in); 
– System.out.println("Adjon meg egy számot!"); 
– int a = in.nextInt(); 
– in.close(); 
● Olvass be két számot, s írd ki az összegüket!

More Related Content

Similar to 1 java megismerese

20111130 oa gtest
20111130 oa gtest20111130 oa gtest
20111130 oa gtest
czras
 
A Redis lehetőségei
A Redis lehetőségeiA Redis lehetőségei
A Redis lehetőségei
vvinston
 
Android fejlesztés
Android fejlesztésAndroid fejlesztés
Android fejlesztés
Open Academy
 
PHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosításaPHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosítása
Ferenc Kovács
 
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokonCross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
eRise
 
Szerver oldali fejlesztés korszerű módszerekkel C# nyelven
Szerver oldali fejlesztés korszerű módszerekkel C# nyelvenSzerver oldali fejlesztés korszerű módszerekkel C# nyelven
Szerver oldali fejlesztés korszerű módszerekkel C# nyelven
Krisztián Gyula Tóth
 
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
Ferenc Szalai
 
Nagy terhelésű webes rendszerek fejlesztése
Nagy terhelésű webes rendszerek fejlesztéseNagy terhelésű webes rendszerek fejlesztése
Nagy terhelésű webes rendszerek fejlesztése
János Pásztor
 
Grid Underground projekt
Grid Underground projektGrid Underground projekt
Grid Underground projekt
Ferenc Szalai
 
Szoftver tesztelés - Gyakorlati jó-ha-tudod
Szoftver tesztelés - Gyakorlati jó-ha-tudodSzoftver tesztelés - Gyakorlati jó-ha-tudod
Szoftver tesztelés - Gyakorlati jó-ha-tudod
Richard Oliver Legendi
 
Mágikus Magento - Bevezetés a Magento világába
Mágikus Magento - Bevezetés a Magento világábaMágikus Magento - Bevezetés a Magento világába
Mágikus Magento - Bevezetés a Magento világába
János Ács
 
Grid és adattárolás
Grid és adattárolásGrid és adattárolás
Grid és adattárolás
Ferenc Szalai
 
Multiplatform mobil fejlesztések
Multiplatform mobil fejlesztésekMultiplatform mobil fejlesztések
Multiplatform mobil fejlesztések
Open Academy
 
Hogyan optimalizáljunk C/C++ kódokat!
Hogyan optimalizáljunk C/C++ kódokat!Hogyan optimalizáljunk C/C++ kódokat!
Hogyan optimalizáljunk C/C++ kódokat!
Open Academy
 
Két Java fejlesztő első Scala projektje
Két Java fejlesztő első Scala projektjeKét Java fejlesztő első Scala projektje
Két Java fejlesztő első Scala projektje
DPC Consulting Ltd
 
Programozo Paternoszter Gnu Linux
Programozo Paternoszter Gnu LinuxProgramozo Paternoszter Gnu Linux
Programozo Paternoszter Gnu Linux
nevjegypartner
 
Klaszter és virtualizációs technikák
Klaszter és virtualizációs technikákKlaszter és virtualizációs technikák
Klaszter és virtualizációs technikák
Ferenc Szalai
 
Budapest.rb 2011/01 - Rails Deployment
Budapest.rb 2011/01 - Rails DeploymentBudapest.rb 2011/01 - Rails Deployment
Budapest.rb 2011/01 - Rails Deployment
Digital Natives
 

Similar to 1 java megismerese (20)

20111130 oa gtest
20111130 oa gtest20111130 oa gtest
20111130 oa gtest
 
A Redis lehetőségei
A Redis lehetőségeiA Redis lehetőségei
A Redis lehetőségei
 
Android fejlesztés
Android fejlesztésAndroid fejlesztés
Android fejlesztés
 
PHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosításaPHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosítása
 
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokonCross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
 
Szerver oldali fejlesztés korszerű módszerekkel C# nyelven
Szerver oldali fejlesztés korszerű módszerekkel C# nyelvenSzerver oldali fejlesztés korszerű módszerekkel C# nyelven
Szerver oldali fejlesztés korszerű módszerekkel C# nyelven
 
Linux alapok
Linux alapokLinux alapok
Linux alapok
 
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
A ClusterGrid rendszer - avagy hogyan üzemeltessünk, több mint 1000 csomópont...
 
Nagy terhelésű webes rendszerek fejlesztése
Nagy terhelésű webes rendszerek fejlesztéseNagy terhelésű webes rendszerek fejlesztése
Nagy terhelésű webes rendszerek fejlesztése
 
Grid Underground projekt
Grid Underground projektGrid Underground projekt
Grid Underground projekt
 
Szoftver tesztelés - Gyakorlati jó-ha-tudod
Szoftver tesztelés - Gyakorlati jó-ha-tudodSzoftver tesztelés - Gyakorlati jó-ha-tudod
Szoftver tesztelés - Gyakorlati jó-ha-tudod
 
Mágikus Magento - Bevezetés a Magento világába
Mágikus Magento - Bevezetés a Magento világábaMágikus Magento - Bevezetés a Magento világába
Mágikus Magento - Bevezetés a Magento világába
 
Grid és adattárolás
Grid és adattárolásGrid és adattárolás
Grid és adattárolás
 
Diagram és barcode
Diagram és barcodeDiagram és barcode
Diagram és barcode
 
Multiplatform mobil fejlesztések
Multiplatform mobil fejlesztésekMultiplatform mobil fejlesztések
Multiplatform mobil fejlesztések
 
Hogyan optimalizáljunk C/C++ kódokat!
Hogyan optimalizáljunk C/C++ kódokat!Hogyan optimalizáljunk C/C++ kódokat!
Hogyan optimalizáljunk C/C++ kódokat!
 
Két Java fejlesztő első Scala projektje
Két Java fejlesztő első Scala projektjeKét Java fejlesztő első Scala projektje
Két Java fejlesztő első Scala projektje
 
Programozo Paternoszter Gnu Linux
Programozo Paternoszter Gnu LinuxProgramozo Paternoszter Gnu Linux
Programozo Paternoszter Gnu Linux
 
Klaszter és virtualizációs technikák
Klaszter és virtualizációs technikákKlaszter és virtualizációs technikák
Klaszter és virtualizációs technikák
 
Budapest.rb 2011/01 - Rails Deployment
Budapest.rb 2011/01 - Rails DeploymentBudapest.rb 2011/01 - Rails Deployment
Budapest.rb 2011/01 - Rails Deployment
 

1 java megismerese

  • 1. A Java megismerese ● Java története ● NETBEANS telepítése, megismerése ● Programozási alapok JAVA nyelven ● Változók, primitív típusok Készítette: Nagy Balázs Tamás
  • 2. Telepítés, beállítás ● JDK (Java Development Kit) ● Környezeti változó beállítása – Számítógép/Tulajdonságok/Környezeti változók/Advanced – Path után c:Program Filesjavajdk???bin ● Kódolás – Akár jegyzettömb – Netbeans / Eclipse
  • 3. ●Java története ● Sun Microsystems - James Gosling 1990 ● Cél: intelligens eszközök megírása – Interaktív TV, hűtő, sötő, katonai műhold... ● Eredetileg Oak név ● WWW népszerűsége nő – Átírták a nyelvet → webalkalmazások biztonságos futtatása – Új név: Java ● 1995 Java 1.0 ● 2006 nov. 13 java nagy része GPL licenc alá
  • 4. Miért jó? ● Internetes programok (applet) ● Teljesen objektumorientált ● Platformfüggetlen – C++, Pascal Write Once, Compile Anywhere – Write Once, Run Anywhere ● Platformfüggetlen bájtkód → JVM ● Egyszerű ● Biztonságos → nyilvános jelkulcsú titokítás ● Jó hibakijelzés ● Többszálúság
  • 5. Hello ● Hello World → Elso.java ● javac Elso.java ● java Elso public class A{ /** * Az első programom * Kiírja, hogy 'Hello World' */ public static void main(String[]args){ System.out.println("Hello World");// Hello World kiírása } }
  • 6. Komment ● A fordító nem értelmezi ● Fejlesztőknek segítség ● Dokumentációkellék ● Fajtái – Dokumentáció – Több soros komment – Egysoros komment /** * Az első programom * Kiírja, hogy 'Hello World' */ /* Az első programom Kiírja, hogy 'Hello World'*/ // Hello World kiírása
  • 7. Működés Application Programming Interface: ● Előre elkészített programrészletek ● Osztályok, interfészek package-kben ● pl.: fájlkezeléshez, grafikus programokhoz
  • 8. Programozási alapok ● Objektum/Osztály pl. monitor – Állapota/tulajdonsága van (mező, változó): pl.: színe, mérete – Csinál valamit (tagfüggvény, művelet): pl.: világít ● Konvenciók – Számít a kis és a nagy betű – Osztály nevének nagy kezdőbetű – Tagfüggvényeknek kis kezdőbetű – Fájlnév megegyezik az osztálynévvel – main függvény fog lefutni
  • 9. Adjunk össze! ● Három int változó ● Harmadikban az eredmény, amit kiírunk public class B { public static void main(String[] args) { int a = 2; int b = 3; int c = a + b; System.out.println(c); } }
  • 10. Típusok ● Statikus típusosság: deklarálás előtt értéket kell adni a típusnak – int valasz = 42; ● Egész szám típusú változó – Meghatározza a műveleteket ● Változó neve: valasz ● Változó értéke ● Primitív típusok – Java-ba beépített típusok – Kis betű – Nem osztályból készített objektumok
  • 11. Primitív típusok ● byte – 8 bites előjeles egész -128→127 ● short – 16 bites előjeles egész -32.768→32767 ● int – 32 bites előjeles egész -231→231-1 ● long - 64 bites előjeles egész -263→263-1 ● float – 32 bites valós ● double – 64 bites valós ● boolean – true/false (nem 1 bitet foglal) ● char – 16 bites Unicode karakter
  • 12. Szöveg String sz1 = "Hello "; String sz2 = "World"; String sz3 = sz1 + sz2; System.out.println(sz3); ● Miért nagy S? ● Valójában nem primitív, de sok tekintetben úgy használjuk – Direktben kap értéket ● == operátor nem működik
  • 13. Adjunk össze kicsit másképp ● Típusosság ● Típuskényszerítés public class D { public static void main(String[] args) { int a = 2; double b = 3; int c = a + (int)b; System.out.println(c); } }
  • 14. Műveletek ● Művelet azonos típusú elemek között – Egész műveletei: + - * / % – Valós műveletei: + - * / ● Végezd el a műveleteket! (Negyedik.java) ● Művelet valós és egész között?
  • 15. Operátorok ● Alapműveletek operátorai – + összead két számot, szövegeket összefűz – - különbséget képez két számból – * két szám szorzatát képzi – / osztás valós esetén, egészrész egészek esetén ● További matematikai műveletek – % maradék (pl.: 15 % 4 → 3) – ++ eggyel növel (pl.: i++ ha I 3 volt, akkor 4 lesz) ● Egyenlők – = értékadás – == egyenlőség ellenőrzése (pl.: 3 == 4 az hamis)
  • 16. Konzol ● Függvények az API részei ● Kiírás konzolra – System.out.println(„Amit ki akarok írni”) ● Beolvasás konzolról – Scanner in = new Scanner(System.in); – System.out.println("Adjon meg egy számot!"); – int a = in.nextInt(); – in.close(); ● Olvass be két számot, s írd ki az összegüket!