YeXo - een kernel programmeren

12 maart 2006

Java beginners tutorial

Altijd al willen leren programmeren? Of gewoon nieuwsgierig hoe zo'n computer nou eigenlijk werkt? In dat geval ben je hier op het goede adres.


Voordat we beginnen met het eigenlijke programmeren, hier een kleine uitleg wat je met java kunt en wat de voordelen / nadelen zijn van java ten opzichte van c en c++. Als je geen zin hebt in dit theoretische verhaal kun je het ook overslaan en beginnen met de voorbereiding.
Voordelen:


  • Lijkt veel op c++, maar is veel eenvoudiger omdat er geen pointers in java bestaan. Deze heb je in java dan ook niet nodig.

  • Java is objectgeoriënteerd. Het maakt niet uit als je nu nog niet weet wat dit inhoud, hier kom ik later zeker op terug. Voor hele simpele programma's maakt dit niet uit maar je hebt het nodig zogauw je begint met grafische programma's of wat ingewikkeldere technieken.

  • Java is een geïnterpreteerde taal, dit betekend dat java op veel verschillende computers uitgevoerd kan worden (bijv. onder windows en linux) zonder dat je het programma opnieuw moet compileren.

  • Robuustheid: Dit is een gevolg van het feit dat java geïnterpreteerd wordt. Hierdoor zijn verschillende oorzaken van fouten veel makkelijker op te sporen in een java programma dan in een c++ programma.


Nadelen:

  • De snelheid van java programma's ten opzichte van c++ programma's is beperkt.

  • Omdat java nog steeds erg hard in ontwikkeling is verdwijnen er wel eens dingen uit oude versies.


De voorbereiding


Om een programma te schrijven in java hebben we niet veel nodig: een simpele texteditor (kladblok voldoet al), een commandoprompt (onder windows xp: Start->uitvoeren->cmd) en de java sdk van Sun.


We beginnen met het downloaden van de java sdk. Deze is te vinden op de site van sun: http://java.sun.com/javase/downloads/index.jsp. Klik hier op "Download J2SE SDK". Je komt dan op een pagina waar je aan moet vinken akkoord te zijn met de voorwaarden. Download hierna de java sdk voor het besturingssysteem waar jij meer werkt. De installatie spreekt voor zich.


We zijn nu bijna klaar om te beginnen met het eerste programma. Eerst moeten we nog het path iets uitbreiden. Dit gaat onder windows xp op deze manier: Klik met de rechtermuisknop op deze computer en klik op eigenschappen. Ga naar geavanceerd en klik op omgevingsvariabelen. Nu moet je in het onderste vak de variabele 'path' of 'PATH' selecteren op bewerken klikken. Voor dit stukje ga ik ervanuit dat je de java sdk in de map C:/java heb geinstalleerd, als dit niet zo is moet je hierna C:/java vervangen door je eigen installatiemap. Voeg nu in het tekstvak het volgende toe (zonder aanhalingstekens): ";C:/java/bin/". Nu zijn we klaar om met ons eerste programma te beginnen.


Het eerste programma


Om niet met het met simpelste "Hello world!"-programma te beginnen hier een iets uitgebreider voorbeeld:
Bestand: HelloWorld.java

public class HelloWorld{
    int getal1 = 5;
    int getal2 = 8;
    public static void main(String args[] ) {
        System.out.println("Hello World!");
        System.out.println( "Som = " + (getal1+getal2) );
        System.out.println( ("Som = "+getal1) + getal2 );
    }
}

Sla dit op als een bestand genaamd 'HelloWorld.java'. Open daarna een opdrachtprompt, ga naar de goede map (met cd mapnaam) en type:
javac HelloWorld.java
Als het allemaal goed is gegaan heeft de java compiler nu een bestand HelloWorld.class aangemaakt. Om dit bestand uit te voeren type je:
java HelloWorld
Je krijgt nu de volgende uitvoer:
Hello World!
Som = 13
Som = 58


Uitleg van de code


public class HelloWorld {
Deze regel geeft aan dat hier de class HelloWorld begint.
int getal1 = 5;
int getal2 = 8;

Deze regels maken twee variabelen aan met de namen getal1 en getal2. Aan getal1 wordt de waarde 5 toegekent en aan getal2 de waarde 8.
public static void main(String args[] ) {
Deze regel geeft het begin aan van de functie main. De functie main is het beginpunt van het programma. Vanaf dit punt wordt de code uitgevoerd. Deze regel is in elk programma hetzelfde.
System.out.println("Hello World!");
Deze regel print de woorden Hello World! op het scherm op een eigen regel.
System.out.println( "Som = " + (getal1+getal2) );
Hier worden eerste de variabelen getal1 en getal2 bij elkaar opgeteld (5+8=13) en daarna wordt het volgende geprint: Som = 13.
System.out.println( ("Som = "+getal1) + getal2 );
Deze regel lijkt heel erg op de vorige maar verschilt door de haakjes. Deze regel voegt eerst getal1 toe aan "Som = " en plakt er daarna getal2 aan vast. De uitvoer is dan ook: Som = 58.

8 Reacties:

  • goeiedag, ik vind het echt vet relax dat je deze kennis wilt delen k ben echt letterlijk n beginner die wil beginnen dus k hoop dat je nog meer post bedankt hiervoor alvast in ieder geval!

    Door Anonymous Anoniem, op 12 april, 2006 02:34  

  • Heel mooi, maar public static void main(String args[] ) { ùoet voor de invoer van de variabelen

    Door Anonymous Anoniem, op 06 oktober, 2007 22:47  

  • Bedankt voor de tut.
    Maar is de code niet fout? Het moet toch zo zijn?

    [code]public class HelloWorld{
    public static void main(String[] args){
    int getal1 = 5;
    int getal2 = 8;
    System.out.println("Hello World!");
    System.out.println("Som = " + (getal1+getal2));
    System.out.println( ("Som = " + getal1) + getal2);
    }
    }[/code]

    in plaats van:

    [code]public class HelloWorld{
    int getal1 = 5;
    int getal2 = 8;
    public static void main(String[] args){
    System.out.println("Hello World!");
    System.out.println("Som = " + (getal1+getal2));
    System.out.println( ("Som = " + getal1) + getal2);
    }
    }[/code]

    Door Anonymous Anoniem, op 03 december, 2007 11:06  

  • Nee, de code is niet fout. De code die jij geeft werkt net zo goed, er is echter een klein verschil. getal1 en getal2 zijn twee variabelen die ik declareer buiten de main functie. Ze zijn dan iin alle functies binnen die class te gebruiken. Jij declareert ze binnen de main functie. Je kunt ze dan alleen gebruiken binnen diezelfde main functie. Wat beter is hangt af van waar je ze wilt gebruiken. Als je ze inderdaad alleen in de main functie nodig hebt is jou code netter.

    Door Blogger Yexo, op 03 december, 2007 16:20  

  • bij mij lukt het niet hoor ik krijg het niet voor mekaar om javac Helloworld te openen wat doe ik fout. mijn pc zegt dat hij javac niet herkent als een interne of externe opdracht, progamma of batchbestand. Wat doe ik fout en wat zou ik moeten doen om dit te verhelpen. ik ben pas vandaag een beetje begonnen met java dus ik ben nog een echte beginner

    alvast bedankt.

    paul

    Door Anonymous Anoniem, op 03 januari, 2008 13:34  

  • ''We zijn nu bijna klaar om te beginnen met het eerste programma. Eerst moeten we nog het path iets uitbreiden. Dit gaat onder windows xp op deze manier: Klik met de rechtermuisknop op deze computer en klik op eigenschappen. Ga naar geavanceerd en klik op omgevingsvariabelen. Nu moet je in het onderste vak de variabele 'path' of 'PATH' selecteren op bewerken klikken. Voor dit stukje ga ik ervanuit dat je de java sdk in de map C:/java heb geinstalleerd, als dit niet zo is moet je hierna C:/java vervangen door je eigen installatiemap. Voeg nu in het tekstvak het volgende toe (zonder aanhalingstekens): ";C:/java/bin/". Nu zijn we klaar om met ons eerste programma te beginnen.''
    Heb je dit al geprobeerd?

    Door Blogger Yexo, op 03 januari, 2008 19:36  

  • heej, ja nu lukt het wel maar hij geeft nog twee error ik heb dat java bestand opgeslagen in mijn documenten. Ik ga dus met cd Mijn documenten naar de goeie map en dan typ ik javac HelloWorld.java en dan geeft hij twee errors. Er staat precies dit:
    HelloWorld.java:1: 'class' or 'interface' expected
    [code]public class HelloWorld{
    ^
    HelloWorld.java:9: 'class' or 'interface' expected
    }[/code]
    ^
    2 errors

    wat doe ik nu precies fout??

    groetjes paul

    Door Anonymous Anoniem, op 03 januari, 2008 23:40  

  • De code-tags ([code] en [/code] zijn geen onderdeel van de java-code. Als je deze weghaalt uit je code zal het programma werken. Als je meer hulp wilt kun je beter even mailen. Mijn emailadres staat in mijn profiel.

    Door Blogger Yexo, op 04 januari, 2008 00:29  

Een reactie posten

<< Home