Bluej Bild einfügen java.lang.NullPointerException (in sum.multimedia.Bild ) Hilfe was ist Falsch?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Das ist schön, dass du uns die Klasse "bIld" hinterlassen hast, aber der Fehler scheint beim erstellen des "Bild"-Objektes zu entstehen, welches ja scheinbar doch ein anderes ist, als das was du uns hier präsentiert hast (darum wahrscheinlich auch die komische Schreibweise), da dieses ja nicht mal einen Konstruktor mit 4 Parametern hat. Daher kann ich dir auch nicht sagen wo genau der Fehler liegt, da dieser (wie auch von Java geschrieben) in der Bild-Klasse liegt, die uns jedoch unbekannt ist.

Flipse789 
Fragesteller
 04.12.2010, 22:08

das kann sein, ich habe dieses Objekt unter folgendem link gedownloaded: http://www.mg-werl.de/sum/ , wie bei bilbo129 schon gesagt benutzt meine ganze Schule diese Klassen, also müsste das eigentlich fehlerlos sein...

0
z10r01  05.12.2010, 20:26
@Flipse789

Wäre natürlich zu einfach wenn die Bild.java als Quellcode drinliegen würde :D

Hm.. Eine NullPointer würde mir jetzt aber fast nur einfallen, wenn er das Bild unter dem genannten Verzeichnis nicht öffnen kann. Hast du denn schonmal versucht ein leeres Bild zu erstellen und dann die Datei mit ladeBild(Pfad) zu laden? Dann kannst du zumindest sicher sagen, dass es an dem Parameter Pfad liegt, wenn der Fehler erst hier kommt.

0
Flipse789 
Fragesteller
 06.12.2010, 21:43
@z10r01

Danke für deine Hilfe, ich hab jetzt eine Komplett neue Klasse und dadrin das Objekt Picture gemacht. Das Objekt lädt nur den Bildschirm und ein leeres Bild, es führt nichts aus, aber es kommt wieder die Fehlermeldung:

java.lang.NullPointerException at sum.multimedia.Bild.<init>(Bild.java:86) at Picture.<init>(Picture.java:15) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at bluej.runtime.ExecServer$3.run(ExecServer.java:790)

und er unterstreicht: meinBild = new Bild(10,10,50,50);

0

Wie bereits z10r01 geschrieben hat, liegt der Fehler im Bild-Objekt selbst. Nähere Informationen kann da evtl. aber die NullPointerException selbst über die Message und den Stacktrace liefern. Schau dir das entweder direkt in einem Debugger an oder packe

new Bild(...);

in einen try-catch-Block und gib den Inhalt z. B. auf einer Console aus oder schreib ihn in eine Datei.

Evtl. lässt sich daraus erschließen, weshalb es zu der Exception kommt.

Flipse789 
Fragesteller
 04.12.2010, 22:00

Danke für deine Antwort, aber ich bin ein Java Neuling, ich habe Informatik erst seid diesem Schuljahr. Also soll ich das Objekt öffnen indem ich in Bluej auf Werkzeuge klicke, und dann klasse aus Bibliothek verwenden klicke? hab ich versucht aber ich kann da nicht den Strig angeben wo mein Bild liegt, sonder muss eine Variabel eingeben.

0
Flipse789 
Fragesteller
 04.12.2010, 22:13
@Flipse789

Ich hab jetzt den String eingegeben, aber dann kommt wieder dieser Fehler, nun unterstreicht Bluej den String, welche Bildformate kann eigentlich Java oder Bluej öffnen?

0
Flipse789 
Fragesteller
 04.12.2010, 22:17
@Flipse789

Das ist jetzt die Fehlermeldung die sofort beim erstellen des Objektes bIld kommt:

java.lang.NullPointerException at sum.multimedia.Bild.<init>(Bild.java:109) at bIld.<init>(bIld.java:18) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at bluej.runtime.ExecServer$3.run(ExecServer.java:790)

0

Sind die Schreibfehler von "bild" extra? "public class bIld" und "public bIld"? Bzw.: Gibts die Klasse "Bild"?

Flipse789 
Fragesteller
 04.12.2010, 22:04

nein ich hab die Klasse extra so genannt, ja die klasse Bild (bei sum.multimedia.Bild), ich hab alle sum. klassen von folgendem link: http://www.mg-werl.de/sum/SuMWin.zip unsere ganze Schule benutzt diese Klassen, also müssten die eigentlich funktionieren.

0