Java I. A Java programozási nyelv



Hasonló dokumentumok
Java I. A Java programozási nyelv

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

I. Bevezetés. 1. ábra A Java "logója"

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

Programozás I. 1. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Bevezetés a Java programozási nyelvbe

Bevezetés a Java programozási nyelvbe

Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

A Java EE 5 plattform

Szoftvertechnológia alapjai Java előadások

Programozási nyelvek JAVA EA+GY 1. gyakolat

JAVA ALKALMAZÁSOK 1. ELŐADÁS 2/22/2017 1

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

A NYELV NEVE. Kezdetben: Oak. James Gosling. Java: Sun Mycrosystems védjegyev

Programozási nyelv Java

Közösség, projektek, IDE

Java. JIT (Just in Time) fordítók alkalmazása, optimalizálás AOT (Ahead of Time) fordítók alkalmazásának lehetősége

JAVA webes alkalmazások

Programozási technológia I.

Osztott alkalmazások fejlesztési technológiái Áttekintés

Web-fejlesztés NGM_IN002_1

Segédanyag: Java alkalmazások gyakorlat

Segédanyag: Java alkalmazások gyakorlat

Programozás III A JAVA TECHNOLÓGIA LÉNYEGE. Többlépcsős fordítás JAVA PLATFORM. Platformfüggetlenség

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

A Java nyelv bemutatása

Java és web programozás

Flex: csak rugalmasan!

Széchenyi István Egyetem. Programozás III. Varjasi Norbert

Üdvözli Önöket A PGY3 tantárgy! Bakay Árpád dr. NETvisor kft (30) arpad.bakay@netvisor.hu

R I Szer e i r alizáció.

OOP: Java 1.Gy: Java alapok

Hello World. Óbudai Egyetem, Java Standard Edition Mérnök Informatikus szak, BSc Labor 1. Bedők Dávid v0.3

OPENCV TELEPÍTÉSE SZÁMÍTÓGÉPES LÁTÁS ÉS KÉPFELDOLGOZÁS. Tanács Attila Képfeldolgozás és Számítógépes Grafika Tanszék Szegedi Tudományegyetem

A Java programozási nyelv

Bevezető. Servlet alapgondolatok

Bevezetés, platformok. Léczfalvy Ádám

JAVA nyelvi alapok. Adatbányászati technikák (VISZM185) Dávid István

ARM Cortex magú mikrovezérlők. mbed

Kommunikációs rendszerek teljesítőképesség-vizsgálata

C++ fejlesztés az ECLIPSE környezetben

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra.

Java programozási nyelv

Java II. I A Java programozási nyelv alapelemei

Informatikai alkalmazások - levelező

4. rész: Java Enterprise Edition bevezetı. Bakay Árpád dr. NETvisor kft (30)

Java-ról Kotlinra. Ekler Péter AutSoft BME AUT. AutSoft

Java felhasználói felület

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string

Mobilplatformok Merre tart a világ? Kis Gergely MattaKis Consulting

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

iphone és Android két jó barát...

Java programozási nyelv 6. rész Java a gyakorlatban

Java Programozás 2. Ea: Java alapok. Ismétlés ++

Javac és Eclipse útmutató

JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése

Fejlesztői szemmel at K

Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans

Programzás I gyakorlat

C++ programok fordítása

Enterprise JavaBeans 1.4 platform (EJB 2.0)

Mobil Informatikai Rendszerek

Tartalom. Az EJB 2.1 problémái Az EJB 3 megoldásai

Programozási technológia I 1. gyakorlat. A Java nyelvi alapjai, a NetBeans környezet

QuickSend. , és SMS küldés program. Felhasználói kézikönyv. Program dokumentáció 2008 JMGM Magyarország Informatikai Kft.

A Java nyelv. Bevezetés, alapok Elek Tibor

Programozás I. gyakorlat

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben?

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

Programozás alapjai Bevezetés

Dr. Schuster György október 30.

A JavaServer Pages (JSP)

Interaktív, grafikus környezet. Magasszintû alkalmazási nyelv (KAL) Integrált grafikus interface könyvtár. Intelligens kapcsolat más szoftverekkel

Adatszerkezetek és algoritmusok

Google Web Toolkit. Elek Márton. Drótposta kft.

Gyakorlati vizsgatevékenység B

A JavaServer Pages (JSP)

9. MPI

SOA modell: Ez az interfész definiálja az elérhető adatokat, és megadja, hogy hogyan lehet azokhoz hozzáférni.

Webes alkalmazások fejlesztése

Automatizált Java Build. ApacheAnt használatával

Ajax és Echo 2. Bokor Attila

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Programozási nyelvek II.: JAVA

Java Server Pages - JSP. Web Technológiák. Java Server Pages - JSP. JSP lapok életciklusa

CLICK ON... Termékismertető

JAVA SE/ME tanfolyam tematika

Fordított és szkript nyelvek összehasonlító elemzése. Sergyán Szabolcs

Objektumorientált programozás C# nyelven III.

3. Gyakorlat Ismerkedés a Java nyelvvel

A JavaServer Pages (JSP)

Tartalomjegyzék. Bevezetés...2

Komponens modellek. 3. Előadás (első fele)

Java Remote Method Invocation API

Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22

A szoftverfejlesztés eszközei

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Átírás:

Java I. A Java programozási nyelv története,, alapvetı jellemzıi Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 02. 12. Java I.: Történet, jellemzık, JDK JAVA1 / 1

Egy kis történelem 1. 1990-es évek eleje: a SUN belsı project-je James Gosling vezetésével (set top box) platformfüggetlen technológia szükségessége. Egyik akkori nyelv sem volt megfelelı, ezért terveztek egy újat. A projekt (és vele az új nyelv) aztán lassan elhalt. Java I.: Történet, jellemzık, JDK JAVA1 / 2

Egy kis történelem 2. 1990-es évek közepe: az Internet rohamos terjedése újra felvetette a platform-független technológia szükségességét. Újraéledt a project, de általánosabb célkitőzéssel. Eredménye a Java nyelv elsı verziója lett. Java I.: Történet, jellemzık, JDK JAVA1 / 3

Egy kis történelem 3. 1995: Java 1 platform 1999: Java 2 platform (1.2-es verziószámtól) Jelenleg: (2007. február) J2SE 1.6 (Java 6 platform) A Java egyszerre programozási nyelv platform Java I.: Történet, jellemzık, JDK JAVA1 / 4

A Java nyelv alapvetı tulajdonságai 1. Magas szintő programozási nyelv platform-független általános célú teljesen objektum-orientált egyszerő interpretált (de speciális módon) elosztott (distributed) Java I.: Történet, jellemzık, JDK JAVA1 / 5

A Java nyelv alapvetı tulajdonságai 2. robosztus biztonságos hordozható többszálú (multithreaded) A C++ ismeretében született, annak formalizmusát tekintette mintának A C++ hátrányait igyekezett kiküszöbölni Java I.: Történet, jellemzık, JDK JAVA1 / 6

A Java nyelv egyszerő C / C++ szerő nyelv, de nem vette át azokat a nyelvi elemeket, amelyek veszélyes konstrukciókat engednek meg. Legfontosabb egyszerősítés a pointerek "számőzése". A Java nyelv könnyen megtanulható. Ez nem jelenti azt, hogy jó Java programok írása is könnyő feladat Nagyon nagymérető standard könyvtár készlet! Ez hatékonyabbá teszi a programozást, de nehezíti a megtanulást. Java I.: Történet, jellemzık, JDK JAVA1 / 7

A Java egyszerre fordított és interpretált JVM Forráskód Byte kód Gépi kód Java I.: Történet, jellemzık, JDK JAVA1 / 8

A Java mint platform A Java egy tisztán software megvalósítású platform is. Két része van a Java virtuális gép (JVM) a Java programozási interface (Java API) Java I.: Történet, jellemzık, JDK JAVA1 / 9

A Java szabványok A SUN az alábbi részekre (kiadásokra) osztja a Java alapú szaványos eszközöket: J2SE - Java 2 Plattform, Standard Edition J2EE- Java 2 Plattform, Enterprise Edition J2ME- Java 2 Plattform, Micro Edition Java I.: Történet, jellemzık, JDK JAVA1 / 10

A Java szabványok - J2SE Mindazon alapszolgáltatások, amelyek Java programok készítését teszik lehetıvé. Legfontosabb részei maga a Java nyelv alapvetı hálózati szolgáltatások RMI (Remote Method Invocation) applet és a szervlet lokális komponensek (JavaBeans) GUI (platformfüggetlen felhasználói interface elemek) és még nagyon-nagyon sok más... Java I.: Történet, jellemzık, JDK JAVA1 / 11

A Java szabványok - J2EE J2EE- Java 2 Plattform, Enterprise Edition A J2SE szolgáltatásait is tartalmazza, ezen felül a legfontosabb részei: komponens szemlélető fejlesztés a nagymérető alkalmazások készítését támogatja Web szolgáltatás alapú alkalmazások készítése biztonságos, robosztus rendszerek fejlesztésének eszközei Java I.: Történet, jellemzık, JDK JAVA1 / 12

A Java szabványok - J2ME J2ME- Java 2 Plattform, Micro Edition Kis erıforrásokkal rendelkezı rendszerekre optimalizált Smart card-ok, vezeték nélküli eszközök, beágyazott rendszerek stb. fejlesztéséhez Mobiltelefonok Java I.: Történet, jellemzık, JDK JAVA1 / 13

A Java program Java program: Java-fordítóval készült önálló alkalmazás. az adott architektúrán futó JVM hajtja végre mindazon jogokkal rendelkezik, mint bármely más alkalmazás Bináris (byte kód) Java I.: Történet, jellemzık, JDK JAVA1 / 14

A Java applet Applet: HTML oldalból elérhetı, végrehajtható byte kód, ami Java forrásból készült. A HTML kódba csak egy hivatkozás kerül, az applet maga (a lefordított kód) bárhonnan letöltıdhet a HTML oldal értelmezıje (a böngészı) hajtja végre (a böngészı valósítja meg a JVM-et) korlátozott jogokkal rendelkezik biztonsági okok miatt Bináris (byte kód) Java I.: Történet, jellemzık, JDK JAVA1 / 15

És s egy névrokon: n a JavaScript Eredetileg LiveScript néven a Netscape-nél kifejlesztett script nyelv (tehát nem bináris kód) Célja web oldalak dinamikussá tétele. A (szöveges) kód része a html oldalnak. A Java-hoz hasonlóan a C++ szintakszisához hasonló formalizmus Nem objektum orientált, csak objektum alapú (nem implementálja valamennyi alapelvet) Bár ezt is a böngészı értelmezi, semmi köze a Java platformhoz (nem a JVM értelmezi) Java I.: Történet, jellemzık, JDK JAVA1 / 16

Java alapú fejlesztés Valamennyi Java szabvány, és a SUN által implementált alapvetı fejlesztıeszközök nyílt forrásúak és ingyenesek. Ezen kívül számtalan nyílt forrású, ingyenes zárt forrású, de ingyenes kereskedelmi termék. Java I.: Történet, jellemzık, JDK JAVA1 / 17

A minimális fejlesztıkörnyezet A J2SE szolgáltatásaihoz: J2SDK vagy újabban JDK ("Java Development Kit ) a java.sun.com oldalról ingyen letölthetı számtalan platformra a legfrissebb verzió: JDK 6.0 (2007. február) A tárgy keretében elhangzottakhoz az JDK 1.2 vagy frissebb verziók mindegyike megfelelı. A kivételeket külön jelezzük. Egy tetszıleges szövegszerkesztı (notepad.exe, pico) Java I.: Történet, jellemzık, JDK JAVA1 / 18

Kényelmesebbesebb fejlesztı környezetek Ingyenes integrált fejlesztıeszközök például: NetBeans letölthetı a java.sun.com címrıl Eclipse letölthetı a www.eclipse.org címrıl Mindkét fejlesztıeszköz maga is Java-ban íródott, tehát sokféle platformon futtatható (Pl. Windows, Linux) Java I.: Történet, jellemzık, JDK JAVA1 / 19

A JDK legfontosabb elemei A Java API-t implementáló könyvtárak Segédprogramok: javac: java fordító java: a JVM (futtatáshoz) javadoc: automatikus dokumentáció generáláshoz a forrás szöveg és a benne található speciális kommentek alapján jdb: debugger stb. Java I.: Történet, jellemzık, JDK JAVA1 / 20

A minimális futtató környezet A J2SE szolgáltatásaihoz: JRE (Java Runtime Environment) A java.sun.com címrıl letölthetı számtalan platformra A JDK tartalmazza Ha egy gépen csak JRE van, bármely más gépen fejlesztett Java program futtatható, ha ugyanolyan, vagy korábbi verziójú JDK segítségével készült. Java I.: Történet, jellemzık, JDK JAVA1 / 21

A "Hello World" program class HelloWorld { public static void main( String args[] ) { System.out.print("Hello "); if ( args.length == 0 ) System.out.println("World!"); else System.out.println(args[0] + "!"); } } Kötelezıen egy HelloWorld.java file-ban kell lennie. Java I.: Történet, jellemzık, JDK JAVA1 / 22

Fejlesztési si lépésekl A HelloWorld.java file megszerkesztése egy tetszıleges szövegszerkesztıvel Fordítás: javac HelloWorld.java abban a jegyzékben kell kiadni, ahol a forrásfile van A fordítás eredménye egy HelloWorld.class file, ugyanabban a jegyzékben Futtatás: java HelloWorld paraméter a HelloWorld.class file-t futtatja Java I.: Történet, jellemzık, JDK JAVA1 / 23