Verständnisfrage NPE

Rufus.Mueller

Bekanntes Mitglied
Wenn ich die Methode gibGroesseSequenzbehaelter2() wie unten in der KLasse stehend aufrufe, wird eine NPE geworfen. Wenn ich die Methode wie unten folgt abändere, funktioniert alles wie gewünscht. Problemlos kann ich in der Methode auch sequenzbehaelter2 auf der Konsole ausgeben, aber will ich sequenzbehaelter2.size() auf der Konsole ausgeben, kommt wiederdie NPE. Wie ist das zu erklären? An der Konsolenausgabe sehe ich, dass es die Sequenz gibt, warum sollte ich dann nicht auch deren size() ausgeben können?


Edit: Das ist kein dringliches Problem das gelöst werden muss, zum Laufen hab' ichs ja gebracht, ist rein interessehalber.


Java:
	//Methodenteil
	
	public int gibGroesseSequenzbehaelter2(){
		
		return (this.get(2).size());
	}




Java:
import java.util.ArrayList;


public class SequenzbehaelterCollectionUebungen extends ArrayList<ArrayList<int[]>> {
	
	ArrayList<int[]> schotter1;
	ArrayList<int[]> schotter2;
	ArrayList<int[]> sequenzbehaelter;
	ArrayList<int[]>  sequenzbehaelter2;
	ArrayList<int[]>  sequenzbehaelter3;

	
	int[] sequenz;
	

	
	
	public int[] gibSequenz(int laenge){
		int laengeSequenz=laenge;
		
		sequenzbehaelter = this.get(laengeSequenz);

		sequenz =sequenzbehaelter.get(sequenzbehaelter.size()-1);
		this.sequenzbehaelter.remove(sequenzbehaelter.size()-1);
		return sequenz;
		
		
	}

	//Konstruktor
	public  SequenzbehaelterCollectionUebungen() {



		Sequenzbehaelter schotter1 = new Sequenzbehaelter();
		Sequenzbehaelter schotter2 = new Sequenzbehaelter();
		Sequenzbehaelter sequenzbehaelter2 = new Sequenzbehaelter();
		Sequenzbehaelter sequenzbehaelter3 = new Sequenzbehaelter();
		


		//Sequenzen der Länge 2 erzeugen	
		int[] s2001 = {1,2};
		int[] s2002 = {3,4};
		
		

		//Sequenzen der Lange 3 erzeugen
		int[] s3001 = {1,2,3};
		int[] s3002 = {1,2,3};
		
		

		//Sequenzen der Länge zwei in ihren Sequenzbehälter füllen
		sequenzbehaelter2.add(s2001);
		sequenzbehaelter2.add(s2002);
		
		
		
		System.out.println(sequenzbehaelter2);

		//Sequenzen der Länge drei in ihren Sequenzbehälter füllen
		sequenzbehaelter3.add(s3001);
		sequenzbehaelter3.add(s3002);
	

		
		//Befüllen der SequenzbehaelterCollection 
		
		this.add(schotter1);
		this.add(schotter2);
		this.add(sequenzbehaelter2);
		this.add(sequenzbehaelter3);
		
		System.out.println(this.get(2));
	}
	
	
	//Methodenteil
	
	public int gibGroesseSequenzbehaelter2(){
		
		return (sequenzbehaelter2.size());
	}
	


	}
 
G

Gast2

Gast
Java:
public class SequenzbehaelterCollectionUebungen extends ArrayList<ArrayList<int[]>> {
    
    ArrayList<int[]> schotter1;
    ArrayList<int[]> schotter2;
    ArrayList<int[]> sequenzbehaelter;
    ArrayList<int[]>  sequenzbehaelter2;
    ArrayList<int[]>  sequenzbehaelter3;
 
    
    int[] sequenz;
Was soll denn das bitteschön sein?
Deine Klasse erbt von einer doppelt verschachtelten ArrayList. Zusätzlich hast du in deiner Klasse noch 5 weitere ArrayLists.:shock:

Von ArrayList erben muss man in der Regel nie, mir fällt zumindest kein anwendungsfall ein wo man das mal machen müsste.
Zu deinem Fehler, kA, da mag ich mich nicht reindenken ;)
 

Rufus.Mueller

Bekanntes Mitglied
Da waren tatsächlich noch Rudimente einer früheren Version enthalten, tatäschlich war es so gemeint:

Java:
public class SequenzbehaelterCollectionUebungen extends ArrayList<ArrayList> {

Als Elemente werden dann ArrayList<ArrayList<Integer>> aufgenommen. Ein Wunder, dass das so überhaupt funktioniert hat. Der beschriebene Fehler (den ich wie schon erwähnt, auf anderen Wegen umgangen habe) ist damit aber nicht gelöst.

sequenzlist2 wird sehr wohlinitialisiert, nämlich ab Zeile 54.
 

Final_Striker

Top Contributor
sequenzlist2 wird sehr wohlinitialisiert, nämlich ab Zeile 54.

Initialisieren bedeutet in deinem Fall eine Liste erstellen.


[c]Sequenzbehaelter sequenzbehaelter2 = new Sequenzbehaelter();[/c]

Und was du in der Zeile 37 machst, ist das Erzeugen einer lokalen Variable von Typ Sequenzbehaelter. Die heißt zwar genauso wie deine ArrayList hat aber ansonsten nichts mit ihr zu tun. Deine ArrayList ist und bleibt null, aus diesem Grund auch die NPE.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
A Verständnisfrage Java Basics - Anfänger-Themen 12
M Verständnisfrage: Warum wird die Datei ohne Inhalt übertragen Java Basics - Anfänger-Themen 3
P Verständnisfrage: PageFactory.initElements Java Basics - Anfänger-Themen 2
R do while Schleife Verständnisfrage Java Basics - Anfänger-Themen 2
G while.next() Verständnisfrage Java Basics - Anfänger-Themen 16
Vivien Kurze Verständnisfrage zu Java Point aus java.awt.* Java Basics - Anfänger-Themen 5
C Erste Schritte Anfänger Verständnisfrage zum Compiler Java Basics - Anfänger-Themen 31
T Verständnisfrage Objekt Getter Setter Java Basics - Anfänger-Themen 102
K Verständnisfrage Server/Client BufferedReader, PrintWriter Java Basics - Anfänger-Themen 2
Der Grütz Verständnisfrage zu Übung aus Java Kurs - Schaltjahr bestimmen Java Basics - Anfänger-Themen 2
J Verständnisfrage zu throws neben Funktionen Java Basics - Anfänger-Themen 2
TimoN11 Verständnisfrage bei Aufgabe Java Basics - Anfänger-Themen 2
P Verständnisfrage zum Mapping Java Basics - Anfänger-Themen 3
M Java Version Verständnisfrage Java Basics - Anfänger-Themen 16
M Verständnisfrage zu eine Online Aufgabe Java Basics - Anfänger-Themen 7
T Verständnisfrage zur Konsolenausgabe Java Basics - Anfänger-Themen 2
M Verständnisfrage zu Generics Java Basics - Anfänger-Themen 7
D Verständnisfrage zur Modellierung einer HDD Java Basics - Anfänger-Themen 17
W Methoden Verständnisfrage Vererbung von Methoden Java Basics - Anfänger-Themen 14
S Verständnisfrage lokale Ordnerpfade Java Basics - Anfänger-Themen 1
T Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 7
J Java Starthilfe Verständnisfrage Aufgabe Java Basics - Anfänger-Themen 2
O Anfänger, Verständnisfrage Java Basics - Anfänger-Themen 3
C Verständnisfrage zu Modulo Java Basics - Anfänger-Themen 6
C Verständnisfrage bezüglich der Do-While Schleife Java Basics - Anfänger-Themen 9
L Verständnisfrage - Speicherabbild Java Basics - Anfänger-Themen 4
melly_ Verständnisfrage zu args Java Basics - Anfänger-Themen 3
A Variablen Verständnisfrage bzgl. Variablen/Referenzen Java Basics - Anfänger-Themen 3
K Verständnisfrage eines Abschnitts Java Basics - Anfänger-Themen 6
K Rekursion Verständnisfrage Java Basics - Anfänger-Themen 19
S Modell View Controller Verständnisfrage Java Basics - Anfänger-Themen 24
J Superklassen Konstruktor Verständnisfrage Java Basics - Anfänger-Themen 1
JavaTalksToMe Erste Schritte Println-Frage (Verständnisfrage) Java Basics - Anfänger-Themen 1
R Verständnisfrage zu Objekten u. Übergabeparameter Java Basics - Anfänger-Themen 8
G Collections Verständnisfrage zur For-Each-Schleife Java Basics - Anfänger-Themen 7
b1ck Interface Verständnisfrage zum GUI mit "swing" Java Basics - Anfänger-Themen 1
kilopack15 Verständnisfrage zur Verwendung von notify() bei Threads Java Basics - Anfänger-Themen 2
G Verständnisfrage zu for-each Java Basics - Anfänger-Themen 4
DontFeedTheTroll Erste Schritte Verständnisfrage zu If-Anweisung Java Basics - Anfänger-Themen 7
K Rekursion-Verständnisfrage Java Basics - Anfänger-Themen 4
J Java Server Pages - Verständnisfrage Java Basics - Anfänger-Themen 2
Z Verständnisfrage Anfängerprogramm Java Basics - Anfänger-Themen 0
T Verständnisfrage Zuweisungs-/arithmet. Operatoren Java Basics - Anfänger-Themen 2
G Methoden Verständnisfrage zur Methoden Java Basics - Anfänger-Themen 7
LionAge Kapselung, Verständnisfrage zur Objekterzeugung Java Basics - Anfänger-Themen 4
Z Verständnisfrage zum Multithreading Java Basics - Anfänger-Themen 3
R OOP / Verständnisfrage zum Konstuktor (siehe code) Java Basics - Anfänger-Themen 7
gamebreiti Verständnisfrage zu contains() Java Basics - Anfänger-Themen 10
A Verständnisfrage - Koordinatenumrechnung Java Basics - Anfänger-Themen 9
J Erste Schritte Verständnisfrage im Bezug auf das (richtige) Programmieren Java Basics - Anfänger-Themen 5
M Verständnisfrage zu JUnit Tests und private Methoden Java Basics - Anfänger-Themen 3
H Verständnisfrage Array Java Basics - Anfänger-Themen 2
I Interface Verständnisfrage Interfaces (Bsp.: Enumeration) Java Basics - Anfänger-Themen 2
I Verständnisfrage zu BridgePattern, Verwedung von super() Java Basics - Anfänger-Themen 4
P Verständnisfrage Java Basics - Anfänger-Themen 3
kaoZ Best Practice Verständnisfrage Listener bei lokalen Objekten Java Basics - Anfänger-Themen 8
D Input/Output Verständnisfrage Verzeichnis-/Dateiliste erstellen & Dateikonvertierung Java Basics - Anfänger-Themen 1
S Verständnisfrage zu Anweisungen und deren Wirkung Java Basics - Anfänger-Themen 7
H Verständnisfrage für oder Anweisung Java Basics - Anfänger-Themen 8
E Threads Verständnisfrage bzgl. Threads und Sleep Java Basics - Anfänger-Themen 2
T Erste Schritte Verständnisfrage: Getter und Setter Methoden Java Basics - Anfänger-Themen 3
H Verständnisfrage zu Java-Ausgabe Java Basics - Anfänger-Themen 3
S Verständnisfrage Java Basics - Anfänger-Themen 2
N Verständnisfrage Code Java Basics - Anfänger-Themen 8
B Verständnisfrage Java Basics - Anfänger-Themen 2
H Interface Comparable Verständnisfrage Java Basics - Anfänger-Themen 6
B Verständnisfrage Codezeile Java Basics - Anfänger-Themen 7
B Verständnisfrage:Beispielprogramm BlueJ Java Basics - Anfänger-Themen 3
M Kurze Verständnisfrage zu einer Java Aufgabe Java Basics - Anfänger-Themen 12
K Erste Schritte Kleine Verständnisfrage Java Basics - Anfänger-Themen 12
R Verständnisfrage Referenzvariablen in array Java Basics - Anfänger-Themen 3
M Verständnisfrage: Objekt erzeugen u. zuweisen Java Basics - Anfänger-Themen 16
I OOP Verständnisfrage zu Singelton Pattern Java Basics - Anfänger-Themen 21
M Verständnisfrage zu JPanel Java Basics - Anfänger-Themen 3
S Verständnisfrage: Exception Gebrauch Java Basics - Anfänger-Themen 2
M Verständnisfrage zur Zahlenumwandlung (Dezimal-->Dual) Java Basics - Anfänger-Themen 25
P Java Objekte - Verständnisfrage Java Basics - Anfänger-Themen 9
N Verständnisfrage zu folgendem Programm Java Basics - Anfänger-Themen 2
L Grundlegende Verständnisfrage Hasmap Referenzen Java Basics - Anfänger-Themen 4
S Verständnisfrage zu Interfaces Java Basics - Anfänger-Themen 2
VfL_Freak Verständnisfrage zur Klasse "TIMER" Java Basics - Anfänger-Themen 7
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
M Verständnisfrage im Umgang mit Map Java Basics - Anfänger-Themen 10
K Verständnisfrage zu int.length und String.length() Java Basics - Anfänger-Themen 4
G 2D Array gleichsetzen verständnisfrage Java Basics - Anfänger-Themen 2
M kleine und einfache Verständnisfrage Java Basics - Anfänger-Themen 3
N verständnisfrage java.util.Calendar Java Basics - Anfänger-Themen 4
G Datentypen bits, bytes, chars - Verständnisfrage Java Basics - Anfänger-Themen 5
E Verständnisfrage zu Shutdownhook Java Basics - Anfänger-Themen 5
D Verständnisfrage: Java und MySql Java Basics - Anfänger-Themen 3
F Rekursion Verständnisfrage Java Basics - Anfänger-Themen 6
A Exception Verständnisfrage: Exceptions während, einer Statischenzuweisung abfangen Java Basics - Anfänger-Themen 10
Z Comparator Verständnisfrage Java Basics - Anfänger-Themen 5
D Verständnisfrage zu Funktionen Java Basics - Anfänger-Themen 6
H Verständnisfrage Persistenz Java Basics - Anfänger-Themen 10
neurox Verständnisfrage zu Threads Java Basics - Anfänger-Themen 4
E Verständnisfrage Syntax: frame.getContentPane().add(button) Java Basics - Anfänger-Themen 11
Y Kleine Verständnisfrage zum Thema dynamische Polymorphie Java Basics - Anfänger-Themen 3
F Verständnisfrage Objekt instanzierung / Polymorphie Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben