Lauwers College Buitenpost Hoofdstuk 18 Java Soorten Javaprogrammas
Lauwers. College Buitenpost Hoofdstuk 18: Java Soorten Java-programma’s • Java Applet programma dat op een website zichtbaar is • Java Application programma dat zelfstandig werkt Javascript is geen Java! • Javascript Scripttaal ingebed in html-code, ondersteunt opbouw van webpagina’s
Lauwers. College Buitenpost Voorbeeld van een Java-programma import java. awt. Graphics; import java. applet. Applet; methodeheader methodeaanroep public class Hallo extends Applet { public void paint (Graphics g) { g. draw. String("Hallo!", 20); } } accolades begrenzen klasse en methode één klasse met één methode met één opdracht
Lauwers. College Buitenpost Klasse- en methode-header public: mag door andere applets worden gebruikt naam Hallo: zelfbedacht de klasse is een uitbreiding van de libraryklasse Applet import java. awt. Graphics; import java. applet. Applet; public class Hallo extends Applet { public void paint (Graphics g) { g. draw. String("Hallo!", 20); } } void = leeg De methode geeft geen getal of string als resultaat
Lauwers. College Buitenpost Opdracht: methode-aanroep opdracht: aanroep van een methode object waarop de methode werkt import java. awt. Graphics; import java. applet. Applet; public class Hallo extends Applet { public void paint (Graphics g) { g. draw. String("Hallo!", 20); } } punt tussen object en methode naam van de methode drie parameters
Lauwers. College Buitenpost Klasse-bibliotheken import java. awt. Graphics; import java. applet. Applet; libraryklassen moet je importeren met vermelding van het package waar ze in zitten public class Hallo extends Applet { public void paint (Graphics g) { g. draw. String("Hallo!", 20); } } je mag libraryklassen gebruiken
Lauwers. College Buitenpost Website met een applet HTML-tag <APPLET> <HTML> Dit is een applet: <BR> <APPLET code = Hallo. class </APPLET> </HTML> bytecode die het resultaat is van het compileren van Hallo. java width=100 height=50> het bestand Hallo. class moet in dezelfde map staan als het html-document
Lauwers. College Buitenpost Parameters doorgeven aan applets vanuit HTML altijd een public class Groet extends Applet String als { resultaat public void paint(Graphics g) { String persoon, groet; persoon=this. get. Parameter("voornaam"); groet = "Hallo " + persoon + "!"; g. draw. String(groet, 50, 20); } } <APPLET code=Groet. class width=100 height=100> <PARAM name="voornaam" value="Jeroen"> </APPLET> dit krijg je als resultaat bij aanroep van get. Parameter("voornaam"
Lauwers. College Buitenpost Methoden uit Graphics x n draw. String(String, x, y) n draw. Line(x 1, y 1, x 2, y 2) y hallo n draw. Rect(x, y, l, b) n draw. Oval(x, y, l, b) n fill. Rect(x, y, l, b) n fill. Oval(x, y, l, b) n set. Color(k) bepaalt de kleur van later getekende figuren
Lauwers. College Buitenpost Variabelen int breedte, hoogte; String s; breedte = 200; hoogte = 100; s = "hallo"; g. fill. Rect(10, 0, breedte, hoogte); g. drawstring(s, 10, 200); declaratie: aankondigen variabelen en hun type toekenningsopdrachten: variabelen krijgen een waarde gebruik van variabelen
Lauwers. College Buitenpost Commentaar • Commentaar zet je tussen de programmaregels • Het dient om de code te verduidelijken • Twee vormen: – van /* tot */ – van // tot einde regel public class Groet extends Applet { public void paint(Graphics g) { String persoon, groet; /* haalt de inhoud van de variabele persoon uit het html-document */ persoon=this. get. Parameter("voornaam"); groet = "Hallo " + persoon + "!"; g. draw. String(groet, 50, 20); } } dit is commentaar
Lauwers. College Buitenpost Typen variabelen Gehele getallen: • byte 127 • short 32767 • int 2 miljard • long 9 * 1018 Kommagetallen: n float 8 cijfers, 1038 n double 15 cijfers, 10308 Letters of woorden: Ø char 1 teken Ø String 1 of meer tekens Boolese variabelen: q boolean true of false
Lauwers. College Buitenpost Operatoren Beide argumenten int resultaatwaarde int type-conversie n Minstens één double resultaatwaarde double type-conversie n bij + operator geldt: Minstens één String resultaatwaarde String 2+5=7 3 * 4 = 12 5/2=3 24 % 5 = 4 (rest!) (double)5/2 = 2. 5 0. 5 * 7 = 3. 5 (int)0. 5*7 = 4 int b = 7; "nr" + b = "nr 7"
Lauwers. College Buitenpost Boolean expressies • Vergelijken van waarden x <= y x ==y x != y is x kleiner of gelijk aan y? is x gelijk aan y ? is x ongelijk aan y ? x=5 betekent x wordt 5 • Combineren van boolean expressies met logische operatoren Ø && Ø || and or (x<0) && (y>0) (x==0) || (y==0) Ø ! not ! (x==0) George Boole (1815 -1864)
Lauwers. College Buitenpost Constanten § Kleuren black, blue , cyan , dark. Gray, green , light. Gray, magenta , orange, pink , red , white , yellow § § Wiskundige constanten Stijlen bij lettertypen bold, italic, plain Denk er om dat Java hoodlettergevoelig is. Math. pi geeft een foutmelding! Color. blue Math. PI en Math. E Font. bold
Lauwers. College Buitenpost Objecten maken met de constructor-methode Als je iets anders dan een getal of string declareert dan gebruik je het woord new bij de toekenning; dat wordt de constructormethode genoemd. constructor declaratie Button b; b = new Button("OK"); Aanroep van constructor-methode: • maakt nieuw object in het geheugen • bewerkt dat object alvast • plaatst het niet automatisch op het applet
Lauwers. College Buitenpost klasse Font • Declaratie Font f; naam van het font stijl • Aanmaak object f = new Font( "Arial", Font. bold, 12 ); • Gebruik van het object g. set. Font ( f ); grootte
Lauwers. College Buitenpost klasse Color • Declaratie Color c; rood groen • Aanmaak object c = new Color( 178, 255, 152 ); • Gebruik van het object g. set. Color ( c ); blauw
Lauwers. College Buitenpost for-opdracht initialisatie (beginwaarde) voorwaarde om door te gaan volgende waarde for ( int t=0 ; t<20 ; t++ ) { String s = String. value. Of(t*7); g. draw. String(s, 10 , t*20 ); } maakt van de waarde van t*7 een string
Lauwers. College Buitenpost While-opdracht public void paint (Graphics g) { wordt herhaald int t=1; zolang k kleiner double k=1000; dan 2000 is while ( k<2000 ) { k = k * 1. 05; String ks = String. value. Of(k); g. draw. String(ks, 10, 20*t ); t = t+1; } k wijzigt in de body }
Lauwers. College Buitenpost Exceptions Exception: • Uitzonderlijke toestand die door een methode wordt opgeworpen, namelijk als er een fout optreedt in het try-gedeelte • De situatie moet door de aanroeper van de methode worden opgevangen. Er moet worden aangegeven wat er moet gebeuren als er een fout optreedt. dat staat in het catch-gedeelte
Lauwers. College Buitenpost Try-catch try { kan een Exception opwerpen (foutmelding) s = invoer. get. Text ( ); n = Integer. parse. Int (s); uitvoer. set. Text ( "kwadraat is " + n*n ); } Maakt van de string s een getal (integer) catch ( Exception e ) { uitvoer. set. Text ( s + " is geen getal" ); } Doe dit als er een fout optreedt Probeer deze opdrachten eerst uit te voeren
Lauwers. College Buitenpost API Als je iets over een methode wilt weten kun je de API raadplegen, via internet of de java-documentatie
- Slides: 22