You are on page 1of 11

Web alkalmazásfejlesztés

5. JAVA

5.1. Alapfogalmak

A Java nagyteljesítményű, objektum-orientált, internet-programozási nyelv. A World


Wide Web gyors fejlődése és elterjedése következtében a Javát, a C++ programozási
nyelv alapján, a SUN Microsystems cég kutatócsoportja, a JavaSoft fejlesztette ki. A
Java nyelv bemutatására 1995. május 23.-án került sor. 1995-től kezdve a Java futtató
rendszerét beépítették a böngészőkbe, ezzel megalapozva a Java nyelv sikerét és
gyors elterjedését.

A Java nyelv fejlesztésének alapötlete a következő:


Kifejleszteni egy hordozható nyelvet, amely egy virtuális számítógépre közbenső
kódot generál, ez a közbenső kód, úgynevezett bájtkód (5.1. ábra), alkalmazható
minden olyan számítógépen, amely rendelkezik megfelelő interpreterrel (5.2. ábra).

Java forráskód

Fordító

Bájtkód

5.1. ábra A forráskód lefordítása bájtkódra


1
Web alkalmazásfejlesztés
_____________________________________________________________________________________________________________

Tehát a Java forrásprogram elkészített forráskódja először egy Javac nevű fordítóval
lefordításra kerül bájtkódba. Majd a Java interpreter segítségével értelmezzük és a
programfutás alatt lefordítjuk a számítógép gépi kódjára.

Bájtkód

Java Java Java


Windows Linux ... Sun Solaris
interpreter interpreter interpreter

5.2. ábra A bájtkód értelmezése, fordítása, futtatása lépésenként (interpreter)

Így a következő előnyöket valósítjuk meg:


• Az így kapott előfordított bájtkód platformfüggetlen.
• Az előfordított bájkód gyorsabban értelmezhető a hagyományos
interpretált programozási nyelvben írt forrásállományoktól.
• Az értelmező biztosítja a programvégrehajtás felügyeletét.
• A bájtkódba történő fordítás biztosítja a Java programfejlesztő szerzői
jogait.

A Java programok tehát a fordító és értelmező rétegeknek köszönhetően jól


hordozhatóak és biztonságosak.

A Java nyelv fejlesztői, a nyelv jellemzőit hivatalos kiadványban tették közzé az 5.3.
ábra szerint:

A Java nyelv jellemzői

Egyszerű Robusztus Hordozható Többszálú


Objektumorientált Biztonságos Interpretált Dinamikus
Elosztott Architektúra-semleges Magas teljesítményű

5.3. ábra A Java nyelv jellemzői


2
Web alkalmazásfejlesztés

A Javában az 5.4. blokkséma szerint kétféle programok írhatók:


• Teljes értékű önálló Java-programok, úgynevezet “alkalmazások”.
Hogy egy alkalmazás végrehajtható legyen, az adott számítógépen
csupán egy Java-értelmező jelenléte szükséges (Java Virtuel Mashine).
• Java-appletek, amelyek nem önálló Java-programok, mivel az Applet
megjelenítéséhez Java-kompatibilis webböngészőt igényelnek.

Java programok

Alkalmazások Appletek

5.4. ábra A Java programok felosztása

5.2. A Java programfejlesztés eszközei

5.2.1 A JDK fejlesztői környezet

Az Java programok (alkalmazások és Appletek) elkészítése szempontjából a JDK


fejlesztői környezetben (Java Developer Kit) a következő eszközökre lesz
szükségünk:

• Szövegszerkesztő

A Java forrásprogram megszerkesztésére szolgál (mivel a JDK nem tartalmaz


szövegszerkesztőt). Megfelel bármilyen egyszerű szövegszerkesztő, amely formázás
nélküli ASCII-szöveget állít elő (általában minden operációs rendszerben
megtalálható), például a Jegyzettömb (Notepad).

• Webböngésző

A Java-appletek megjelenítésére szolgál. Célszerű alkalmazni a szélleskörűen


használt Java-kompatibilis webböngészőket mint például a:
Microsoft Internet Explorer
Netscape Navigator.
3
Web alkalmazásfejlesztés
_____________________________________________________________________________________________________________

Megjegyzés:
Ha esetleg nem rendelkezünk webböngészővel (ritka eset), akkor a Java
Appleteket megtekinthetjük a fejlesztői környezet részét képező Applet-Viewerrel.

A JDK fejlesztői környezet mint public domain szoftver áll a rendelkezésünkre és


letölthető a SUN cég web címéről:
http://www.sun.com/products/jdk

A JDK a Java programozáshoz szükséges eszközök (Compiler, Interpreter,


AppletViewer, Debugger, Java Virtuel Mashine stb.) és alapkönyvtárak gyüjteménye,
az internetről különböző platformokra (Windows, linux, Mac OS ...) ingyenesen
letölthető. A JDK fejlesztői környezet használata nem kényelmes mivel nem
rendelkezik integrált fejlesztői környezettel. A köny írása idején az aktuális verzió:
JDK 1.4 (5.5. ábra). Az első Java programozási lépéseket a JDK fejlesztői
környezetben mutatjuk be.

5.5. ábra A Java 2 Platform. Standard Edition v 1.4 struktúrája


4
Web alkalmazásfejlesztés

5.2.1 Integrált fejlesztői környezet

Más a helyzet, ha a Java programozáshoz integrált fejlesztői környezetet (Integrated


Development Environmednt, IDE) használunk ,mint például a JBuildert a Borlandtól,
amely beépített szövegszerkesztővel, fordítóval és futtatóval rendelkezik. Az integrált
fejlesztői környezet, mivel sok munkát levesz a programozó válláról, kényelmes
vizuális Java programozást biztosít. A köny írása idején az aktuális verzió: JBuilder
7.0. A JBuilder 7.0 „Personal” változata ingyenesen letölthető a Borland cég web
címéről:
http://www.borland.com

5.3. A JDK telepítése

A JDK fejlesztői környezet telepítő csomagja letölthető a Sun-szerverről:


http://www.sun.com/products/jdk

vagy CD-ROM lemezről. Figyelmesen választjuk ki a saját operációs rendszerünkhöz


megfelelő JDK tömörített csomagot. A keresési útvonalak beállítása és a sikeres
telepítés után ujraindítjuk a rendszert.

5.4. Programkészítés a JDK fejlesztői környezetben

Helyesen telepített JDK fejlesztői környezetben bemutatunk két egyszerű Java


programot:
ƒ egy Java-alkalmazást és
ƒ egy Java-applettet.

5.4.1. Java-alkalmazás készítése

Ha a számítógépünkön rendelkezünk megfelelő szövegszerkesztővel és JDK fejlesz-


tői környezettel, akkor a Java-alkalmazás előállítása a következő lépésekből áll:

1. Hivjunk be egy tetszöleges szövegszerkesztőt amely ASCII-szövegként ment,


például a Jegyzettömböt.

2. Nyissuk meg a szerkesztőben egy új állományt és gépeljük be példaként a


következő Java-alkalmazás forráskód szövegét. Gépelés közben Ügyeljünk arra,
hogy a Java különbséget tesz a kis- és nagybetűk között!
5
Web alkalmazásfejlesztés
_____________________________________________________________________________________________________________

3. A forrásszöveget mentsük el a főosztály neve alatt java kiterjesztéssel:


Udvozlet1.java

4. Hívjuk meg a javac Java-fordítóprogramot és fordítsuk le az alkalmazást a


következő parancssorral:
javac Udvozlet1.java
Ekkor a javac fordító előállítja a forrásprogram futatható bájtkód változatát .class
kiterjesztéssel. A példánkban tehát:
Udvozlet1.class
állomány keletkezik:

5. A:
java Udvozlet1
parancssor (ez a bájtkódú állomány neve) begépelése után futtassuk a kész
alkalmazást a Java-értelmezővel.

6
Web alkalmazásfejlesztés

5.4.1.1. A Java-alkalmazás forrásszövege

A Java-programok tulajdonképpen úgynevezett osztálydefiníciókból állnak. Ezek az


osztályok határozzák meg a metódusokat és változókat. A metódusokban találhatók a
Java-program végrehajtására szolgáló utatásítások. Tekintsük át az első Java-
alkalmazásunk struktúráját:

1. class Udvozlet1
2. {
3. public static void main (String[] args)
4. {
5. System.out.println(”Hello World”);
6. }
7. }

Az 1. sorban class Udvozlet1 néven egy új osztályt definiálunk. Az osztály


definiálása mindik class kulcsszóval kezdődik, utána következik az új osztály neve.
Az osztálydefinició kezdetét a 2. sorban kapcsos zárójel jelzi {. Az osztálydefinició
végét a 7. sorban kapcsos zárójel jelzi }.

Minden Java-alkalmazás váza egy főosztályra épül, amely a:


main()
metódust tartalmazza (3-6. sor). Ennek a metódusnak a formája a 3. sor szerint előre
meghatározott:
public static void main (String[] args)
A main() metódushoz tartozó utasítások ismét kapcsos zárójelek közé vannak zárva.
Az utasítás kezdetét a 4. sorban kapcsos zárójel jelzi {. Az utasítás végét a 6. sorban
kapcsos zárójel jelzi }.

A fenti Java-programunk esetében csak egy utasítás található, amely a:


println()
metódus hívását végzi, ezzel egy szöveget írunk ki a képernyőre. A println() egy
előre definiált metódus és a Java standard környezetének a része. Fontos felfigyelni a
pontosvesszőre az 5. sor, vagyis a metódushívás végén, amelyre a fordítónak van
szüksége a forráskódról a bájtkódra történő fordításkor! Fontos megjegyzés: A Java-
alkalmazások végrehajtása a main() metódus első utasításával kezdődik!
7
Web alkalmazásfejlesztés
_____________________________________________________________________________________________________________

5.4.2. Java-appletek készítése

Ha a számítógépünkön rendelkezünk megfelelő szövegszerkesztővel,


webböngészővel és JDK fejlesztői környezettel, akkor a Java-appletek előállítása a
következő lépésekből áll:

1. Hivjunk be egy tetszöleges szövegszerkesztőt amely ASCII-szövegként ment,


például a Jegyzettömböt.
2. Nyissuk meg a szerkesztőben egy új állományt és gépeljük be példaként a
következő Java-applet forrásállomány szövegét.

3. A forrásszöveget mentsük el az osztály neve alatt java kiterjesztéssel:


Udvozlet2.java

4. Hívjuk meg a javac Java-fordítóprogramot és fordítsuk le az Appletet a


következő parancssorral:
javac Udvozlet2.java

Ekkor a javac fordító előállítja a forrásprogram futatható bájtkód változatát .class


kiterjesztéssel. A példánkban tehát:
Udvozlet2.class
állomány keletkezik:
8
Web alkalmazásfejlesztés

5. A lefordított Applet futtatásához, az Applet meghívására a szövegszerkesztővel


még szerkesztenünk kell egy megfelelő HTML-dokumentumot:

6.Mentsük el a megszerkesztett HTML-dokumentumot tetszőleges néven .html


kiterjesztéssel ugyanabba a könyvtárba ahol a Java-applet is található.

7. Töltsük be a megszerkesztet HTML fájlt a Java-kompatibilis webböngészőbe


(vagy a Java AppletViewerbe), ekkor az Applet végrehajtódik.

Amikor a webdokumentum szolgáltatója megirja a Java-appletet, a megfelelő HTML


dokumentumba hivatkozást helyez el az Appletre, majd a Java-appletet és a HTML
dokumentumot a szerveren helyezi el. Ha egy internetfelhasználó webböngészője
segítségével letölti a HTML dokumentumot, akkor az Applet végrehajtódik. Fontos
megjegyzés: Egy Java-applet csak egy webböngészővel együtmüködve tud lefutni!
9
Web alkalmazásfejlesztés
_____________________________________________________________________________________________________________

5.4.2.1 A Java-appletek forrásszövege

Tekintsük át az első Java-applet struktúráját:

1. public class Udvozlet2 extends java.applet.Applet


2. {
3. public void paint(java.awt.Graphics gc)
4. {
5. gc.drawString (”Hello from Java”, 100,100);
6. }
7. }

Minden Java-applet váza egy főosztályra épül, amit a:


public class osztálynév extends java.applet.Applet
alakban definiálunk.

Az Applet főosztályok deklarációja mindig:


public
szóval kezdődik. Az osztály deklarációja után mindik a:
class
kulcsszó következik, utána következik az új főosztály neve. A főosztály nevét
követi az:
extends
kulcsszó, amelynek az a jelentése, hogy az új főosztály a már meglévő:
java.applet.Applet
alaposztályok minden elemét örökli.

Így az 1. sorban Udvozlet2 néven egy főosztályt definiáltunk. Az osztálydefinició


kezdetét a 2. sorban kapcsos zárójel jelzi {. Az osztálydefinició végét a 7. sorban
kapcsos zárójel jelzi }.

A 3. és 6. sorok a paint() metódus definicióját tartalmazzák, ami paraméterként egy


gc nevű változóra vár. A java.awt.Graphics kifejezés jelöli ki a gc változó
adattípusát. A void kulcsszó segítségével a paint() metódus által visszaadott érték is
kijelölésre kerül. A paint() metódus akkor kerül meghívásra és végrehajtásra,
amikor egy Appletet megjelenítünk.
10
Web alkalmazásfejlesztés

Az 4. és 6. sorban található utasításblokkban a gcdrawString() metódus meghívása


található, amely a ”Hello from Java” karakterláncot és a megjelenő üzenet helyének
az x- és z koordinátáit kapja meg paraméterként.

Fontos felfigyelni a pontosvesszőre az 5. sor, vagyis a metódushívás végén,


amelyre a fordítónak van szüksége a forráskódról a bájtkódra történő fordításkor!

További automatikusan meghívható Applet-metódusok:


init()
start()
destroy()

Fontos megjegyzés: A Java-applet az init(), start(), paint() metódusok


végrehajtásával kezdődik!

11

You might also like