Null Pointer Exception bei Methodenaufruf

Hi,

ich muss gesehen ich habe von Java noch nicht wirklich Ahnung. Ich habe mich jetzt schon 2 h mit folgender Aufgabe befasst:

"Programmieren Sie für ein ganz einfaches Raumbelegungstool eine Klasse Raum. Das Raumbelegungstool soll (der Einfachheit halber nur für einen Tag) einen Raum stundenweise als besetzt oder frei verwalten. Sie konnen die Raumbelegung anzeigen lassen, den Raum für eine Stunde reservieren oder eine Reservierung löschen.

Ich habe nun folgende Codes „geschrieben“ aber irgendwas stimmt da nicht und ich finde den Fehler oder besser gesagt die Fehler einfach nicht.

/* Raum.java*/
public class Raum
{
    boolean stunde[];
   
    public Raum ()
    {
        boolean stunde[]=new boolean [24];
        //System.out.println(stunde.length);
    }

     public void init ()
    {
        for (int i=0; i<stunde.length; i++)
        {
            this.stunde[i] = false;
        }
    }
   
     public void belegen (int zeit)
    {
        this.stunde[zeit-1] = true;
    }
   
     public void loeschen (int zeit)
    {
        this.stunde[zeit-1] = false;
    }
   
     public void belegungsplanDrucken()
    {
        for (int i=0; i<this.stunde.length; i++)
        {
            if (stunde[i]=false)
            System.out.println(„Der Raum ist um: „+(i+1)+“ Uhr frei“);
            else
            System.out.println(„Der Raum ist um: „+(i+1)+“ Uhr belegt“);
        }
    }
}

/*Raumbelegung.java*/
public class Raumbelegung
{
    public static void main (String[] args)
    {

    Raum eins = new Raum();        
    
    eins.init();                  
    eins.belegen(4);               
    eins.belegungsplanDrucken();
    }
}

Für nen Profi ist das bestimmt ne kleinigkeit.

Der Fehler liegt hier:

public Raum () {
boolean stunde[]=new boolean [24];
 }

du willst ja die Instanzvariable initialisieren, nicht eine lokale.

Gruß
T.

Hi,

vielen Dank für deine schnelle Hilfe :smile:

Jetzt läuft es 1. und ich habe natürlich auch was dazugelernt.

Wenn ich das richtig sehe hätte das Array das ich mit dem Konstruktor erzeugt hätte ja nur lokal existiert. Keine andere Methode hätte mit diesem Array was anfangen können.

Danke nochmal´s. Ich bin neu hier im Forum. Kann ich mich da mit nem Button direkt bedanken?

Beste Grüße