Access Keys:
Skip to content (Access Key - 0)


Kapittel 1.2 - Hello World

Added by Joachim Haagen Skeie , last edited by Joachim Haagen Skeie on Nov 21, 2009 15:29
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Et Java program er bygget opp av klasser, og hver klasse er bygget opp av metoder, som igjen inneholder variabler og uttrykk. Jeg tar her for meg en meget enkel klasse som kun skriver ut en enkel linje til skjerm, "Hello World!".

Denne klassen inneholder 2 metoder, main() og run(), og har følgende utseendet:

public class HelloWorld
{
	public void run()
	{
		System.out.println("Hello World!");
	}
	
	public static void main(String [] args)
	{
		HelloWorld mittProgram = new HelloWorld();
		mittProgram.run();
	}
}

Koden overfor definerer en klasse med navn "HelloWorld", som er definert i linje 1 overfor. Koden må dermed befinne seg i en fil med navn HelloWorld.java for at den skal kunne kompileres. Kopier innholdet overfor til en tekst editor (Notepad, TextWrangler, vi, pico, etc) og lagre den som "HelloWorld.java".

Linje 3 definerer en metode som vi har kalt run(). Denne metoden er definert "public" som vil si at alle klasser kan se og benytte seg av denne metoden etter at klassen er kompilert. (På samme måte betyr private at kun denne klassen kan se og benytte seg av metoden). Returtypen til run() er satt til void som betyr at metoden ikke returnerer noen verdier - mer om det senere. Metoden run() inneholder kun ett enkelt uttrykk som skriver ut teksten "Hello World!" til skjermen.

Metoden på linje 8 til 12 er nødvendig for å kunne kjøre klassen gjennom JVM. Metoden er, lik som run(), definert som public og uten en retur-type (void). Metoden er i tillegg definert som static som enkelt forklart betyr at metoden eksisterer uten at et objekt av klassen er opprettet. Mer om det senere.

Metoden main(String [] args) er nødvendig ettersom den blir kjørt av JVM. Metoden har to kode linjer. Linje 10 oppretter et nytt objekt av typen HelloWorld kalt mittProgram, og kjører deretter run() metoden til objektet mittProgram (linje 11).

Nå spør du deg kanskje hvorfor man ikke bare kan kalle metoden run() direkte i main() uten å måtte opprette ett nytt HelloWorld objekt først. Årsaken til dette er at metoden main() er en statisk metode og eksisterer dermed uten at et HelloWorld objekt eksisterer, mens metoden run() ikke er statisk og krever dermed at objektet mittProgram (av typen HelloWorld) er opprettet (instasiert) før metoden eksisterer.

Adaptavist Theme Builder (3.3.5-conf210) Powered by Atlassian Confluence 3.0.2, the Enterprise Wiki.