NullPointerException som min lärare inte ens fattar

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015

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!

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Norrköping
Registrerad
Jul 2006

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.

R5-1600X, GA-AB-350M-G3, 16GB DDR4 @ 2666, RX580 8GB, Corsair CX650M Rev2

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015
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!

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Norrköping
Registrerad
Jul 2006

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

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

R5-1600X, GA-AB-350M-G3, 16GB DDR4 @ 2666, RX580 8GB, Corsair CX650M Rev2

Trädvy Permalänk
Inaktiv
Registrerad
Feb 2006

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?

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Sep 2012

Borde du inte initiera studentlistan?

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

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015
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".

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015
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.

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Salem
Registrerad
Mar 2004

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

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

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

Trädvy Permalänk
Medlem
Plats
Frösön
Registrerad
Okt 2015
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!

I can't type and explain. What do I look like ? A Thread?

CPU: Intel Core i5 4690k
GPU: ASUS GTX 1080 8GB
RAM: DDR3 16 GB

Trädvy Permalänk
Medlem
Plats
Vänersborg
Registrerad
Jul 2012

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

Trädvy Permalänk
Inaktiv
Registrerad
Feb 2006
Skrivet av Thunderstruc:

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.