NullPointerException problem

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,
ich habe da ein kleines Problem.

und zwar bekomme ich beim ausführen eines bestimmten Programmes ständig eine NullPointerException geworfen.. leider finde ich nicht heraus woran das liegen könnte... kann den Fehler daher auch nicht beheben.
Würde daher um etwas Hilfe bitten.
danke schon mal im Voraus, und hier folgt der code:


Code:
[i].
.
public Produkt[] auswaehlen(int artikelNr, Produkt[] einkaufswagen) {
		 for(int i = 0; i < einkaufswagen.length; i++) {
			 if (artikel.verfuegbarkeit > 0) {                        //NullPointerException
				 if (einkaufswagen[i]==null){
					 einkaufswagen[i] = artikel;
					 --artikel.verfuegbarkeit;
					 break;
.
.
.etz[/i]
//wobei artikel in derselben klasse als Klassenvariable deklariert wurde
//
Code:
[i]//Produkt artikel = null;[/i]
//
//und verfuegbarkeit ebenfalls als Klassenvariable des Typs int, jedoch in der Klasse Produkt
//
Code:
[i]public class Produkt {
	
	int artikelNr;
	String bezeichnung;
	double preis;
    int verfuegbarkeit;

.
.
.etz[/i]

**************************
naja, wäre toll wenn mir jemand weiter helfen könnte, ich bin leider von den java.sun beschreibungen auch nicht schlauer geworden.
 

JPKI

Top Contributor
Gast hat gesagt.:
//wobei artikel in derselben klasse als Klassenvariable deklariert wurde
//
Code:
[i]//Produkt artikel = null;[/i]
//
Ist doch klar. Der Variable artikel ist keine Referenz zugewiesen, daher operierst du in deiner Methode auf einer Null-Referenz. Probier mal
Code:
Produkt artikel = new Produkt();
 
S

SlaterB

Gast
Verjigorm, du machst dich lächerlich, verfolge das nicht weiter ;)

a) ein int kanngar nicht null sein,
b) wäre er nicht initialisiert, würde das Porgramm nicht kompilieren,
c) eine Exemplarvariable int ist standardmäßig mit 0 initialisiert

der Satz "zeig mal..... " passt aber wiederum gut zu "artikel = null;"
was ja offensichtlich letztlich zur NullPointerException führt,

da gast diesen Punkt etwas holprig mit "nein, das war es leider nicht" beendet hat,
ist es andererseits auch nur fair, dies nicht weiter zu verfolgen ;)
 
G

Gast

Gast
verzeihung:
aber ich habe versucht ein **Prudukt artikel= new Produkt()**
... jedoch muss ich dann meine Klasse von der Produkt klasse ableiten und einen eigenen construktor schreiben oder?
....??
 
G

Gast

Gast
...mache ich das alles bekomme ich einen StackOverflowError in der Klasse Produkt :-(
 
S

SlaterB

Gast
> jedoch muss ich dann meine Klasse von der Produkt klasse ableiten und einen eigenen construktor schreiben oder?

nein, wieso?

-----

außerdem sollst du doch nicht stur ein leeres unnützes Objekt anlegen,
sondern darüber nachdenken, dass das Problem sich darin gründet, dass artikel null ist!,

du willst doch irgendwas mit deinem Einkaufswagen machen,
von irgendeinem artikel die Verfügbarkeit prüfen
(if (artikel.verfuegbarkeit > 0) { )

artikel ist null, du musst also überlegen, was artikel zu diesem Zeitpunkt sein soll?
wo es her kommt, wo es hingeht usw.

-----

> mache ich das alles bekomme ich einen StackOverflowError in der Klasse Produkt :-(

jeder beliebige Befehl kann in irgendein Programm eingebaut beliebige Fehler erzeugen,
das ist doch keine Info..
 
G

Gast

Gast
(if (artikel.verfuegbarkeit > 0) { )

need int#


ok, aber verfügbarkeit ist ein int;... artikel nur leider nicht.
... aber ich danchte wenn man verfügbarkeit über artikel.verfuegbarkeit aufruft nimmt es den int wert...
..versteht man was ich meine :-O....

ich will damit *artikel.verfügbarkleit*
ja praktisch die vierte stelle in der collection anspringen.
zb:
Produkt artikel3 = new Produkt(998337, "Milch", 0.59, 22);

... da dürfte das programm doch nicht mehr null haben sondern ohnehin den int wert oder??
 
S

SlaterB

Gast
> ja praktisch die vierte stelle in der collection anspringen.

wo steht dann
artikel = 4. Stelle in der Collection;
?

bisher steht da nur
artikel = null;
und dann ist artikel natürlich null

> da dürfte das programm doch nicht mehr null haben sondern ohnehin den int wert oder

wer wo wann bist du gerade?
 
G

Gast

Gast
Produkt artikel1 = new Produkt(12345, "Vollkornbrot", 1.98, 75);
Produkt artikel2 = new Produkt(66535, "Kaffee", 3.59, 450);
Produkt artikel3 = new Produkt(998337, "Milch", 0.59, 22);

Produkt[] sortiment = {artikel1, artikel2, artikel3};
this.sortiment = sortiment;


hier bin ich.... hier sind meine artikel dkl. wobei die 4stelle die verfügbarkeit ist
 

MiMij

Bekanntes Mitglied
Ja aber das interessiert ja net. Das ist ja nur das was du dem Konstruktor in Produkt mitgibst.

Hast du in Produkt denn nen Konstruktor gemacht, wo auch das gesetzt wird?

Achja du deklarierst, artikel1, artikel2, ... usw
Aber dann spaeter willst du die verfuegbarkeit von artikel pruefen, aber nen Produkt mit dem namen artikel gibts net, es gibt nur
artikel1
artikel2
.. usw
 
S

SlaterB

Gast
> hier sind meine artikel dkl. wobei die 4stelle die verfügbarkeit ist

dann führe doch endlich mal
artikel = irgendein Artikel;
aus,
bisher steht da nur
artikel = null;
wie ich nicht noch einmal wiederholen werde
 
G

Gast

Gast
die produkt deklarationen stehen nicht im Produkt konstruktor,
sondern in einer void methode in der anwendungsklasse.
.
.
.
und zum zweiten: daran dass kein artikel mit namen artikel existiert liegts auch nicht... hab gearade noch mal alles mit artikel1 probiert (und den gibs ja wohl offensichtlich, oder) und das funkt. ja auch nicht
 

MiMij

Bekanntes Mitglied
Nein ich meinte, wie dien Konstruktor im Produkt aussieht, da du ja anscheinend wenn du ein neues produkt anlegst, verschiedene Werte mitgibst.

Ach und verwende dcoh am besten getters und setters um auf die attribute der anderen Klassen zuzugreifen.
 
S

SlaterB

Gast
> die produkt deklarationen stehen nicht im Produkt konstruktor,
> sondern in einer void methode in der anwendungsklasse.

wo es steht ist mir egal,
wenn du an dieser Stelle mit einem artikel arbeiten willst,
dann musst du auch irgendwoher einen artikel holen

> daran dass kein artikel mit namen artikel existiert liegts auch nicht...

von Namen war bisher nicht die Rede

> hab gearade noch mal alles mit artikel1 probiert (und den gibs ja wohl offensichtlich, oder) und das funkt. ja auch nicht

?
 
G

Gast

Gast
ad SlaterB

mit:
"kann mir bitte jemand helfen"... siehe einleitung

war nicht das permanente zitieren und denunzieren gemeint... sry aber is wahr.
vielleicht kenn ich mich wirklich nit sehr gut aus, aber das is ja eigentlich auch der grund warum ich in diesem forum poste
 
S

SlaterB

Gast
ja, aber mehr als 'die NullPointerException kommt, weil artikel null ist' kann man dir nicht raten,
das ist das, was normalerweise von einem Durchschnittsuser mit 'ach ja, alles klar' beantwortet wird,

mache, dass artikel nicht null ist, darum geht es die ganze Zeit,
wenn du nicht weißt, wie das geht, dann kann man dir praktisch nicht helfen

was in deinem Programm an dieser Stelle passieren soll, weiß niemand außer dir selber,
und was immer du sonst noch nebenher erzählst hat bisher nichts zur Aufklärung beigetragen,
 
G

Gast

Gast
ja ok, aber das der artikel nicht null sein soll,hab ich über java.sun auch rausgefunden
es ist ja GERADE das problem, dass ich nicht weiß wie ich mein programm umschachteln soll, das es nicht null ergibt.
sry
 
S

SlaterB

Gast
z.B.
artikel = irgendwas;
zum x.ten Mal

dass du das schon weißt, hast du übrigens bisher noch nicht erwähnt,

und nun auch zum zweiten Mal:
"was in deinem Programm an dieser Stelle passieren soll, weiß niemand außer dir selber,
und was immer du sonst noch nebenher erzählst hat bisher nichts zur Aufklärung beigetragen,"

Fragen a la 'was soll ich in meinem Programm richtig machen' funktionieren nicht
 

MiMij

Bekanntes Mitglied
Du koenntest aber einfach mal die code STuecke posten, wo du die neuen Produkte machst, und wo du drauf zugreifst.
 
G

Gast

Gast
public void lieferung() {
Produkt artikel1 = new Produkt(12345, "Vollkornbrot", 1.98, 75);
Produkt artikel2 = new Produkt(66535, "Kaffee", 3.59, 450);
Produkt artikel3 = new Produkt(998337, "Milch", 0.59, 22);
Produkt[] sortiment = {artikel1, artikel2, artikel3};
this.sortiment = sortiment;
}



public void einkaufen() {
Produkt[] einkaufswagen = new Produkt[10];
einkaufswagen = auswaehlen(sortiment[0].artikelNr, einkaufswagen);
einkaufswagen = auswaehlen(sortiment[0].artikelNr, einkaufswagen);
einkaufswagen = zuruecklegen(sortiment[0].artikelNr, einkaufswagen);
einkaufswagen = auswaehlen(sortiment[2].artikelNr, einkaufswagen);
//Vollkornbrot & Kaffee
Kassa kassa = new Kassa();
zahlen(einkaufswagen, kassa);
}






public Produkt[] auswaehlen(int artikelNr, Produkt[] einkaufswagen) {
for(int i = 0; i < einkaufswagen.length; i++) {
if (artikel.verfuegbarkeit > 0) { //NullPointerException
if (einkaufswagen==null){
einkaufswagen = artikel;
--artikel.verfuegbarkeit;
break;
}
else if (i == (einkaufswagen.length-1)) {
Out.println("Der Einkaufswagen ist bereits voll!");
}
}
else {
Out.println("Das Produkt ist ausverkauft!");
}

}
 
S

SlaterB

Gast
anscheinend suchst du zu int artikelNr das passende Produkt,
bevor du dir dessen Verdügbarkeit anschauen kannst, musst du es aber erst finden!

durchlaufe das sortiment-Array und vergleiche die artikelNr,
dann wirst du ein Produkt finden, hast ein Produkt != null und kannst dir dessen Verfügbarkeit anschauen,

schlauer wäre es evtl.statt bei
auswaehlen(sortiment[0].artikelNr, einkaufswagen);
die artikelNr, gleich den ganzen Artikel = Produkt zu übergeben:
auswaehlen(sortiment[0], einkaufswagen);
dann hast du sofort das fragliche Produkt = Artikel,
natürlich nur wenn du die Parameter der Operation auswaehlen() anpasst
 

MiMij

Bekanntes Mitglied
Benutz doch bitte code Tags, so ist das ja unmoeglich zu lesen :(
einfach [.code] hier den code [./code] ohne die punkte
 
G

Guest

Gast
Gast hat gesagt.:
public Produkt[] auswaehlen(int artikelNr, Produkt[] einkaufswagen) {
for(int i = 0; i < einkaufswagen.length; i++) {
if (artikel.verfuegbarkeit > 0) { //NullPointerException
Wo kommt die Variable artikel her?

Für Deine Anwendung scheint mir eine Liste übrigens geeigneter zu sein als ein Array.
 
G

Gast

Gast
die variable artikel wurde zu beginn initialisiert

[.code]
Produkt[] sortiment;
double einkaufspreis = 0;
Produkt artikel = null;
Produkt[] einkaufswagen = null;
[./code]
 
G

Gast

Gast
die variable artikel wurde zu beginn initialisiert

Code:
        Produkt[] sortiment;
	double einkaufspreis = 0;
	Produkt artikel = null;
	Produkt[] einkaufswagen = null;
 

MiMij

Bekanntes Mitglied
Ja und dien artikel ist immer noch null, wie dir schon 20 mal gesagt wurde!
Setz einfach den jeweiligen aktuellen Artikel aus deinem Sortinemt auf artikel und dnan kannst du auch mit der variablen artikel arbeiten.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Methoden Problem mit NullPointerException Allgemeine Java-Themen 9
G Problem mit NullPointerException Allgemeine Java-Themen 5
Zeppi NullPointerException in einer if-Abfrage Allgemeine Java-Themen 6
T imagej-server NullPointerException Allgemeine Java-Themen 1
L Methoden NullpointerException Allgemeine Java-Themen 5
B OOP Auslöser für NullPointerException Allgemeine Java-Themen 3
I Vererbung Nicht erklärliche NullPointerException Allgemeine Java-Themen 7
Drachenbauer warum bekomme ich hier eine NullPointerException Allgemeine Java-Themen 6
I Array Parameter mit 2 Klassen - NullPointerException Allgemeine Java-Themen 3
S Exception in thread "main" java.lang.NullPointerException at FamilienApp.main(FamilienApp.java:15) Allgemeine Java-Themen 1
F Input/Output NullPointerException, aber wieso? [Apache POI] Allgemeine Java-Themen 11
F Input/Output NullPointerException with Apache POI Allgemeine Java-Themen 7
P wiedermal NullPointerException Allgemeine Java-Themen 2
kodela NullPointerException Allgemeine Java-Themen 2
L Variablen NullPointerException (RSA) Allgemeine Java-Themen 2
B NullPointerException bei @Inject JSF Allgemeine Java-Themen 0
Arif Probleme mit NullPointerException Allgemeine Java-Themen 2
G String an Arduino senden NullPointerException in PrintWriter Allgemeine Java-Themen 6
Z NullPointerException beim Schreiben einer ArrayList in eine Datei Allgemeine Java-Themen 6
R NullPointerException Ohne Grund Allgemeine Java-Themen 5
D ByteBuffer getInt NullpointerException Allgemeine Java-Themen 4
S JavaMail - MailSubject,MailFrom,MailDate in String Array speichern NullPointerException Allgemeine Java-Themen 2
T Compiler-Fehler NullpointerException! Allgemeine Java-Themen 7
A Methode ergibt Java NullpointerException. Allgemeine Java-Themen 3
F Socket NullPointerException Bitte um hilfe! Allgemeine Java-Themen 12
L NullPointerException bei Instanzvarialen Allgemeine Java-Themen 3
B Compiler-Fehler NullPointerException beim Auslesen von .lang-Datei Allgemeine Java-Themen 3
I Fehler java.lang.NullPointerException Allgemeine Java-Themen 5
B NullPointerException - Aber kein Fehler im Code Allgemeine Java-Themen 4
H java.lang.NullPointerException Allgemeine Java-Themen 5
L Interpreter-Fehler java.lang.NullPointerException Allgemeine Java-Themen 17
M JSON NullPointerException Allgemeine Java-Themen 5
M NullpointerException Allgemeine Java-Themen 2
L Eclipse NullPointerException Allgemeine Java-Themen 6
M Fitness-Rechner: NullPointerException Allgemeine Java-Themen 7
G Thread erzeugt nicht plausible NullPointerException Allgemeine Java-Themen 7
A java.lang.NullPointerException bei Schleife Allgemeine Java-Themen 3
K Unerklärliche nullpointerexception Allgemeine Java-Themen 6
C Was bekomme ich eine Nullpointerexception? (Apache POI) Allgemeine Java-Themen 3
S javadoc java.lang.NullPointerException Allgemeine Java-Themen 2
K 3Dimensionales Feld - NullPointerException Allgemeine Java-Themen 2
J Compiler-Fehler NullPointerException Allgemeine Java-Themen 12
T Compiler-Fehler NullPointerException bei ADT LinkedTree Allgemeine Java-Themen 31
P Beim sortieren nullpointerexception Allgemeine Java-Themen 12
3 MP3-Finder wirft NullPointerException Allgemeine Java-Themen 13
M NullPointerException MenuItem Allgemeine Java-Themen 7
S Dialog einblenden bei NullPointerException Allgemeine Java-Themen 5
T DefaultTableModel NullPointerException Allgemeine Java-Themen 7
ruutaiokwu NullPointerException auf member, die per konstruktor gesetzt wird (multithread-kontext) Allgemeine Java-Themen 2
B NullPointerException ohne Angabe Allgemeine Java-Themen 5
F NullPointerException aber warum ? Allgemeine Java-Themen 9
F Array NullPointerException Allgemeine Java-Themen 26
B NullPointerException bei Wertzuweisung Allgemeine Java-Themen 3
C NullPointerException Allgemeine Java-Themen 9
MonsterBit java.lang.NullPointerException Allgemeine Java-Themen 2
O NullPointerException (wohl Denkfehler) Allgemeine Java-Themen 5
N Warum nullPointerException? Allgemeine Java-Themen 13
N Generics-NullpointerException Allgemeine Java-Themen 7
J NullPointerException mit HashMap Allgemeine Java-Themen 2
B NullPointerException bei new XStream() Allgemeine Java-Themen 2
J java.lang.NullPointerException bei Threadprogrammierung Allgemeine Java-Themen 9
J NullPointerException bei JasperReports Allgemeine Java-Themen 2
V NullPointerException bei Vector Allgemeine Java-Themen 2
G Warum kommt hier NullPointerException? Allgemeine Java-Themen 3
G NullPointerException Allgemeine Java-Themen 5
R Immer wieder NullPointerException Allgemeine Java-Themen 2
M NullPointerException Allgemeine Java-Themen 4
J Fehler: java.lang.NullPointerException Allgemeine Java-Themen 2
G NullPointerException, aber warum? Allgemeine Java-Themen 10
mhauert NullPointerException bei Zugriff auf JNI Objekt Allgemeine Java-Themen 6
J Folgender Fehler: java.lang.NullPointerException Allgemeine Java-Themen 4
T NullPointerException nach Java Update Allgemeine Java-Themen 4
G NullPointerException Allgemeine Java-Themen 6
H NullPointerException trotz Abfangen von null? Allgemeine Java-Themen 9
H nullPointerException bei [ArrayList<String>.add(.)] Allgemeine Java-Themen 3
H NullPointerException Allgemeine Java-Themen 10
P NullPointerException Allgemeine Java-Themen 8
A NullPointerException, Thread soll Thread steuern Allgemeine Java-Themen 2
MQue Sichtbarkeit/HashMap/NullPointerexception Allgemeine Java-Themen 2
MQue NullPointerException Allgemeine Java-Themen 17
A NullPointerException Allgemeine Java-Themen 15
G java.lang.NullPointerException JFreeChart Allgemeine Java-Themen 5
A NullPointerException Allgemeine Java-Themen 11
G Methode mit Schleifen NullPointerException Allgemeine Java-Themen 2
B Pobleme mit NullpointerException Allgemeine Java-Themen 13
M java.lang.NullPointerException im Chatclient Allgemeine Java-Themen 12
S NullPointerException beim Laden von BMPs Allgemeine Java-Themen 3
B java.lang.NullPointerException Allgemeine Java-Themen 11
M NullPointerException bei Subklasse ohne MediaTracker Allgemeine Java-Themen 12
D NullPointerException wo keine sein sollte. Allgemeine Java-Themen 2
F NullpointerException beim Einlesen einer Datei Allgemeine Java-Themen 13
V Button schließen - NullPointerException Allgemeine Java-Themen 6
V NullPointerException Allgemeine Java-Themen 12
krgewb Problem mit Umlauten und Eszett bei InputStream Allgemeine Java-Themen 3
Max246Sch Backtracking Problem Box Filler Allgemeine Java-Themen 6
NightVision402 VisualVM Startskript Problem Allgemeine Java-Themen 3
javaBoon86 Email Server Connection Problem Allgemeine Java-Themen 1
F Problem mit PDFBOX Library Allgemeine Java-Themen 1
A Java modul Problem Allgemeine Java-Themen 4
D Read JSON File Problem Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben