Metoder i java • Det finns två typer av metoder i java – Klassmetoder: deklareras med nyckelordet static. – Instansmetoder: deklareras utan nyckelordet static • Static för java innebär att metoden hör till klassen. Alltså om man har en metoddeklaration utan nyckelordet static (instansmetod), kommer java att inkludera en kopia av metoden i varje instans av klassen. 1 Konstruktor • Konstruktor är en speciell typ av metod som anropas när man skapar en instans av klassen. • I deklaration av en konstruktor anger man inga returtyper. • Konstruktoren måste ha samma namn som klassen. 2 Hur ser klassmetoden ut i java kod? static String metodnamn( String parameternamn) Returtyp (utdata typ) i detta fall String Indata typ i detta fall String De får vi välja hur som helst 3 Instansvariabler och instansmetoder Deklaration av instansvariabler class Person { Deklaration av String name; konstruktor byte age; String mailAddress; public Person(String n, byte a,String m){ name=n; age=a; mailAddress=m; } public String getName(){ return name; Deklaration av } instansmetoder public byte getAge(){ return age; } public String getMailAddress(){ return mailAddress; } } 4 Arrayer / Listor int[] heltalLista= new int[7]; String[] strLista=new String[15]; heltalLista[3]=2005; // fjärde plats ska bli 2005 strLista[9]=”Gott Nytt År”; // 10:e plats initieras Indexet börjar alltid med 0. 5 Grafik Relaterade paket: • java.awt • javax.swing • java.applet För swing komponenter: http://java.sun.com/docs/books/tutorial/uiswing/index.html 6 AWT komponenter 7 Component 8 Hur ser komponenter ut? Checkbox Scrollbar Choice Button List TextField Label TextArea 9 Container 10 Layoutmanager 11 Placering av komponenter beroende på Layoutmager 12 Applet • Applet är en speciell java klass som kan köras i olika webbläsare. • I en applet har vi ingen main() metod men vi har följande: – init() som anropas av webbläsaren då appletten laddas upp – start() som anropas av webbläsaren direkt efter init() – stop() som anropas av webbläsaren då man vill att koden inte ska exekveras för tillfälle. – destroy() anropas av webbläsaren då man vill avsluta appletten. • För att en webbläsare ska kunna strata ett applet så behöves en html-fil där det står information om appletten. 13 Begränsningar hos applet • En applet kan inte läsa/skriva filer som finns på klientsidan. Detta är p.g.a. säkerheten. • Det finns möjlighet att skriva så kallade signerade applettar som er först om tillåtelse av användaren som startade webbläsaren för att läsa/skriva filer. 14 Exempel på en enkel applet import java.applet.*; import java.awt.*; public class FirstApplet extends Applet { public void paint(Graphics g) { g.drawString("Hello World", 25, 50); } } 15 Exempel på html filen <APPLET code="FirstApplet.class" width=150 height=100> </APPLET> 16