java.lang.NullPointerException

Hallo,
ich bin absoluter Anfänger und muss eine Aufgabe als Hausaufgabe lösen :)

In Bild 1 seht ihr meinen Code.
Ich habe ein Feld erstellt und möchte nun bei einzelnen Objekten einen Wert (in dem Fall die Farbe eines Kreises) ändern.
Wenn ich nun aber die Methode farbe_verändern starte (welche sich auf die Methode farbe_ändern innerhalb der Klasse Kreis bezieht) bekomme ich die Fehlermeldung java.lang.NullPointerException und angeblich sei der Wert des Feldes null, was er aber eigentlich nicht sein sollte da ich ihn ja geändert ("blau") habe. Auch auch standartmäßig ist der Wert nicht null sondern in meinem Fall "rot"

In Bild 2 seht ihr den Code der Klasse Kreis auf welche ich in meinem Hauptcode zugreife. Ich vermute das Problem liegt hier.

Vielleicht kann mir einer hier weiterhelfen! Danke für eure Zeit und Hilfe!
 

Anhänge

  • Bild 1.PNG
    Bild 1.PNG
    23,6 KB · Aufrufe: 24
  • Bild 2.PNG
    Bild 2.PNG
    12,4 KB · Aufrufe: 23

krgewb

Top Contributor
Bitte immer in Code-Tags posten.
Java:
public class Ralle_Perlenkette {
    Ralle_Kreis[] Ralle_Kette = new Ralle_Kreis[11];

    public void farbe_verändern (int Nummer_der_Perle){
        Ralle_Kette[Nummer_der_Perle].farbe_ändern("blau");

        for(int a = 0; a<Ralle_Kette.length-1 ; a++) {
            System.out.println( "Die Perle der Nummer" + a + "hat die Farbe" + Ralle_Kette[a].farbe );

        }

    }
}
Java:
public class Ralle_Kreis {
String farbe = "rot";

public void farbe_ändern (String farbe_neu){
this.farbe = farbe_neu;
System.out.println( "Die Farbe wurde auf" + farbe_neu + "geändert");
}

}
 

Kirby.exe

Top Contributor
Also es tritt eine NullPointerException auf, weil du dein Feld nicht mit Elementen gefüllt hast und da der Datentyp ein Referenzdatentyp ist, wird das Array beim initialisieren mit null gefüllt ;)
 

krgewb

Top Contributor
Allgemeine Tipps:
  • Objektnamen sollten mit einem kleinen Buchstaben beginnen. Damit meine ich z.B. dein Ralle_Kette.
  • Bei Namen sollten keine Unterstriche verwendet werden, sondern CamelCase.
  • Bei Namen sollten keine Umlaute verwendet werden. Damit meine ich z.b. dein farbe_ändern.
  • Anstatt Nummer würde ich lieber Index schreiben. Es ist ja der Index gemeint.
  • Wenn die Schleife das ganze Array durchlaufen soll, darfst du nicht length-1 schreiben. Wenn du es trotzdem schreiben möchtest, musst du <= verwenden und nicht <.
  • In deinen Konsolenausgaben fehlen Leerzeichen. Derzeit würden Wörter wie z.B. Nummer0hat und aufblaugeändert ausgegeben werden.
 
Habe es gerade ausprobiert und zumindest bekomme ich jetzt keine Fehlermeldung mehr! Wenn ich mir aber nun die Werte der einzelnen Objekte in der Konsole ausgeben lass, bekomme ich nur @-Zeichen mit irgendwelchen Zahlen und Buchstabenkombinationen obwohl eigentlich überall als Wert "blau" drinstehen sollte.
Javascript:
public class RallePerlenkette {
    RalleKreis ralleKette[] = new RalleKreis[11];
    public void RallePerlenkette() {

        for(int x=0; x<ralleKette.length; x++) {
            ralleKette[x] = new RalleKreis("blau");
            System.out.println(ralleKette[x]);
        }

    
    
    }
 
    
}

Javascript:
public class RalleKreis {
    String farbe;
    public RalleKreis(String x) {
        String farbe = x;

    }


}

Auch habe ich eine Kleinigkeit an meinem Feld geändert ich habe geschreiben
Javascript:
RalleKreis ralleKette[] = new RalleKreis[11];
anstatt von
Javascript:
RalleKreis[] ralleKette = new RalleKreis[11];
also die eckigen Klammern an eine andere Stelle geschrieben ich glaube das war vorher falsch...

Danke für eure Hilfe
 

M.L.

Top Contributor
Ist das nur bei einem String der Fall?
IdR wird nur toString() überschrieben. Der passende Quellcode könnte so wie bei diesem Beitrag gezeigt aussehen:
Code:
 @Override
    public String toString() {
        return "(" + a.toString() 
...
(auf die eigenen Bedürfnisse (Variablen, Abstände,...) anpassen)
 

temi

Top Contributor
Ist das nur bei einem String der Fall?
Naja, wie der Name der Methode to String = zu String schon sagt, soll sie eine Stringrepräsentation eines Objektes zurück liefern. Wie dieser String aussieht ist deine Entscheidung.

Jede Klasse in Java verfügt über die Methode toString(), die sie von Object erbt. Jede Klasse in Java erbt automatisch von Object. Object selbst hat eine Implementation von toString(), die den Namen der Klasse und den Hashcode zurück liefert.
 
K

kneitzel

Gast
Was erwartest Du auch bei:
Java:
public class RalleKreis {
    String farbe;
    public RalleKreis(String x) {
        String farbe = x;
    }
}

Was genau macht die Zeile: String farbe = x;?
 

Kirby.exe

Top Contributor
Das habe ich gemacht und ich bekomme nun sogar eine Ausgabe.
Aber leider steht dort immer nur "null", unabhängig davon ob ich einen String oder eine Zahl als Wert einsetzte.
Das liegt daran, dass du in deinem Konstruktor nicht den Wert einer Instanzvariable zuweist sondern eine Variable mit den selben Namen initialisierst und somit deine Instanz nicht gefüllt ist. Die Instanzvariable enthällt den Wert null, da sie ein Referenzdatentyp ist und keine Referenz enthält ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Fehlermeldung java.lang.NullPointerException Java Basics - Anfänger-Themen 4
X java.lang.NullPointerException fehler ? Java Basics - Anfänger-Themen 1
B java.lang.NullPointerException bei javafx Java Basics - Anfänger-Themen 10
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
H java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G java.lang.NullPointerException Java Basics - Anfänger-Themen 3
E Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 2
J java.lang.NullPointerException in meiner JavaFXControllerKlasse Java Basics - Anfänger-Themen 26
D Communications link failure | java.lang.NullPointerException Java Basics - Anfänger-Themen 3
F java.lang.NullPointerException, kann aber nicht sein! Java Basics - Anfänger-Themen 4
M Compiler-Fehler Java suckt - java.lang.NullPointerException Java Basics - Anfänger-Themen 12
L Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 2
S java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 4
A Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 7
P Interpreter-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 3
T Problem mit Eclipse? Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 4
S Fehler: "java.lang.NullPointerException" Java Basics - Anfänger-Themen 6
I Erste Schritte Ausführfehler: java.lang.NullPointerException Java Basics - Anfänger-Themen 3
1 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException Java Basics - Anfänger-Themen 5
S Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 11
V [Greenfoot] java.lang.NullPointerException Java Basics - Anfänger-Themen 12
S Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 10
J java.lang.NullPointerException Java Basics - Anfänger-Themen 18
K Interpreter-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 6
K OOP java.lang.NullPointerException Java Basics - Anfänger-Themen 2
B Exception in thread "main" java.lang.NullPointerException Fehler Hilfe! Java Basics - Anfänger-Themen 4
S Fehlermeldung: java.lang.NullPointerException Java Basics - Anfänger-Themen 10
A Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 16
K java.lang.NullPointerException in Array bei Arraylistübergabe Java Basics - Anfänger-Themen 7
G java.lang.NullPointerException Was tun? Java Basics - Anfänger-Themen 7
J java.lang.NullPointerException . Java Basics - Anfänger-Themen 5
G java.lang.NullPointerException Java Basics - Anfänger-Themen 2
S java.lang.NullPointerException - Bitte helft mir! Java Basics - Anfänger-Themen 5
S java.lang.NullPointerException Fehler bei Umrechnung Java Basics - Anfänger-Themen 3
P java.lang.NullPointerException Java Basics - Anfänger-Themen 19
M java.lang.NullPointerException at . Java Basics - Anfänger-Themen 4
S java.lang.nullpointerexception bei arrayübergabe Java Basics - Anfänger-Themen 30
S java.lang.NullPointerException bei Bildern Java Basics - Anfänger-Themen 13
P java.lang.NullPointerException was ist das? Java Basics - Anfänger-Themen 7
G java.lang.NullPointerException beim objekt Java Basics - Anfänger-Themen 3
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
JaVaN0oB java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 18
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
H JUnit in Eclipse: java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 9
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
B java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 3
P java.lang.ClassCastException Bedeutung und Lösung Java Basics - Anfänger-Themen 3
J Erste Schritte java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 4
I java.lang.ArrayIndexOutOfBoundsException at lösung.main Java Basics - Anfänger-Themen 3
T Compiler-Fehler java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 2
R java.lang.ArrayIndexOutOfBoundsException: 0 Rechner Error Java Basics - Anfänger-Themen 4
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
N jodaTime java.lang.IllegalArgumentException: Invalid format Java Basics - Anfänger-Themen 3
F Erste Schritte java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 3
R java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 1
V java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 2
H java.lang.NoClassDefFoundError Run as>> Run on Server Java Basics - Anfänger-Themen 2
L Fehler: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5
M java.lang.Enum.valueOf(Unknown Source) Java Basics - Anfänger-Themen 2
L Compiler-Fehler Problem beim Programmieren eines Kalenders (java.lang.ArrayIndexOutOfBoundsException) Java Basics - Anfänger-Themen 2
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
P Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 1
C Hilfe!!! java.lang.ClassCastException Java Basics - Anfänger-Themen 1
O java.lang.IndexOutOfBoundsException JTable autoSort Java Basics - Anfänger-Themen 5
W Methoden Rückgabedatentyp java.util.Map<java.lang.String,? extends ...> Java Basics - Anfänger-Themen 4
F Exception in thread main java.lang.StackOverflowError Java Basics - Anfänger-Themen 3
K Caused by: java.lang.NoClassDefFoundError: org/mindrot/jbcrypt/BCrypt Java Basics - Anfänger-Themen 0
OnDemand java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 9
J Klassen java.lang.String - lexikographisches Sortieren Java Basics - Anfänger-Themen 5
T Erste Schritte import java.lang.System.out Java Basics - Anfänger-Themen 4
H Classpath java.lang.NoClassDefFoundError externe Libary Java Basics - Anfänger-Themen 4
M Exception in thread "main" java.lang.NoClassDefFoundError: MeineKlasse Java Basics - Anfänger-Themen 12
X Applet Fehler: java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 45
B java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
H java.lang.IndexOutOfBoundsException bei verschachtelter ArrayList Java Basics - Anfänger-Themen 9
V java.lang.NoSuchMethodError Java Basics - Anfänger-Themen 2
J java.lang.math asin() Java Basics - Anfänger-Themen 18
R Compiler-Fehler java.lang.ArrayIndexOutOfBoundsException, warum? Java Basics - Anfänger-Themen 6
K Error: java.lang.NoSuchMethodException Java Basics - Anfänger-Themen 2
M Compiler-Fehler Fehler Meldung java.lang.NumberFormatException: empty String Java Basics - Anfänger-Themen 2
G java.lang.ClassNotFoundException Java Basics - Anfänger-Themen 4
S String index out of range: 8 at java.lang.String.substring(Unknown Source) Java Basics - Anfänger-Themen 13
X Interpreter-Fehler "java.lang.NullPionterException: null" bei BlueJ Java Basics - Anfänger-Themen 10
P java.lang.ClassCastException Java Basics - Anfänger-Themen 2
D java.lang.NoSuchMethodError: main Java Basics - Anfänger-Themen 11
S expected java.lang.string but found char Java Basics - Anfänger-Themen 5
S Umgebungsvariable Exception in thread "main" java.lang.UnsatisfiedLinkError: no J3D in java.librar y.path Java Basics - Anfänger-Themen 15
S Compiler-Fehler java.lang.SecurityException: Invalid signature file digest for Manifest main attributes Java Basics - Anfänger-Themen 5
M Klassen Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 2
A Compiler-Fehler unreported exception java.lang.Exception; must be caught or declared to be thrown Java Basics - Anfänger-Themen 7
K Fehlermeldung: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1 Java Basics - Anfänger-Themen 4
M Datentypen java.util.Arrays$ArrayList cannot be cast to [Ljava.lang.String; Java Basics - Anfänger-Themen 11
F Ich kenn mich nicht mehr aus - 'java.lang.NoSuchMethodError: main' in Applet? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben