NullPointerException som min lärare inte ens fattar

Permalänk

NullPointerException som min lärare inte ens fattar

Här är huvudkoden:

public static List<Student> studentList; String studentName = txfStudentName.getText(); String studentPersonalCode = txfStudentPersonalCode.getText(); String studentAddress = txfStudentAddress.getText(); String school = txfSchool.getText(); String program = txfProgram.getText(); studentList.add(new Student(studentName, studentPersonalCode, studentAddress, school, program));

Och här är constructorn:

public class Person implements Serializable{ private String name; private String personalCode; private String address; public Person(String name, String personalCode, String address){ this.name = name; this.personalCode = personalCode; this.address = address; } } //Detta är i en annan klass public class Student extends Person implements Serializable{ private String school; private String program; public Student(String name, String personalCode, String address, String school, String program){ super(name, personalCode, address); this.school = school; this.program = program; } }

Självklart inte all kod, men allt som borde spela roll.
Errorn är en nullPointerException i

studentList.add(new Student(studentName, studentPersonalCode, studentAddress, school, program));

.

Help me Obi-Wan Kenobi you're my only hope!

Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Medlem

public class Person implements Serializable{ public Person(String name, String personalCode, String address){ this.name = name; this.personalCode = personalCode; this.address = address; } }

Name, personalCode och adress finns inte deklarerade i klassen.

Visa signatur

R7-3700X, B450M Mortar MAX, 32GB DDR4 @ 3200, RTX 2080, Corsair CX650M Rev2

Permalänk
Skrivet av Xeno88:

public class Person implements Serializable{ public Person(String name, String personalCode, String address){ this.name = name; this.personalCode = personalCode; this.address = address; } }

Name, personalCode och adress finns inte deklarerade i klassen.

Glömde lägga till det i inlägget. Fixat nu!

Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Medlem

[code public static List<Student> studentList;[/code]
Ska vara

public static List<Student> studentList= new List<Student>();

Visa signatur

R7-3700X, B450M Mortar MAX, 32GB DDR4 @ 3200, RTX 2080, Corsair CX650M Rev2

Permalänk
Inaktiv

Första raden är fel. Du skapar aldrig en ny lista, du bara deklarerar din studentList

public static List<Student> studentList;

borde vara

public static List<Student> studentList = new List<Student>();

Lätt att missa då det är på första raden, borde inte varit svårt alls att se med en debugger?

Permalänk
Medlem

Borde du inte initiera studentlistan?

Visa signatur

8700K 5Ghz | 32GB 3200Mhz | 2080Ti 11GB | Phanteks Enthoo | Asus PG27AQ

Permalänk
Skrivet av Xeno88:

[code public static List<Student> studentList;[/code]
Ska vara

public static List<Student> studentList= new List<Student>();

Då blir det rött. "List is abstract, cannot be instantiated".

Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Skrivet av anon81912:

Första raden är fel. Du skapar aldrig en ny lista, du bara deklarerar din studentList

public static List<Student> studentList;

borde vara

public static List<Student> studentList = new List<Student>();

Lätt att missa då det är på första raden, borde inte varit svårt alls att se med en debugger?

Av någon anledning så tycker våran lärare att vi inte behöver lära oss att använda debuggern.

Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Medlem

Kan inte allt men gillar att programmera, ska det inte vara en Array?

public static List<Student> studentList= new ArrayList();

Visa signatur

Man made the electrolyte to make us see the horrors in the dark.

Permalänk
Skrivet av Oggie:

Kan inte allt men gillar att programmera, ska det inte vara en Array?

public static List<Student> studentList= new ArrayList();

Hahaha, det var ju fånigt simpelt. Tack!

Visa signatur

We all got a chicken-duck-woman-thing waiting for us

CPU: Intel Core i7 10700K
GPU: Nvidia GTX 1080
RAM: DDR4 16 GB

Permalänk
Medlem

Du kommer få ett annat fel sen men det borde du kunna lösa

Permalänk
Inaktiv
Skrivet av MariusFranzen:

Av någon anledning så tycker våran lärare att vi inte behöver lära oss att använda debuggern.

Oj. Det kommer nog senare i så fall. Att inte använda debuggern är som att lära sig snickra utan att mäta.