Java 奇怪的运行时错误
我做了这个程序,它处理类和关系,当我运行这个程序时,它给我一个错误“线程中的异常”main“java.lang.NullPointerException”,我的IDE在编码中没有检测到任何错误,有人能帮我吗,这很烦人Java 奇怪的运行时错误,java,class,runtime,Java,Class,Runtime,我做了这个程序,它处理类和关系,当我运行这个程序时,它给我一个错误“线程中的异常”main“java.lang.NullPointerException”,我的IDE在编码中没有检测到任何错误,有人能帮我吗,这很烦人 import java.util.Vector; class Flight { private String id; private String destination; private Time depart; private Time arri
import java.util.Vector;
class Flight {
private String id;
private String destination;
private Time depart;
private Time arrival;
private Vector passengerList;
public Flight(String a, String b, Time c, Time d) {
id = a;
destination = b;
depart = c;
arrival = d;
}
public void addPassenger(Passenger a) {
passengerList.add(a);
}
public void printInfo() {
System.out.println("Id " + id);
System.out.println("Destination " + destination);
System.out.println("Depart " + depart.getHour() + " " + depart.getMinute());
System.out.println("Arrival " + arrival.getHour() + " " + arrival.getMinute());
System.out.println("Number of passengers " + passengerList.size());
}
}
class Time {
private int hour;
private int minute;
public Time(int a, int b) {
hour = a;
minute = b;
}
public int getHour() {
return hour;
}
public int getMinute() {
return minute;
}
}
class Passenger {
private String name;
private int age;
public Passenger(String a, int b) {
name = a;
age = b;
}
}
class FlightTester {
public static void main(String[] args) {
Time dep = new Time(8, 10);
Time arr = new Time(9, 00);
Flight f = new Flight("PK-303", "Lahore", dep, arr);
Passenger psg1 = new Passenger("Umair", 30);
Passenger psg2 = new Passenger("Manzoor", 44);
f.addPassenger(psg1);
f.addPassenger(psg2);
f.printInfo();
}
}
私人矢量乘客列表 未初始化,可能是问题所在
Vector passengerList are not initialized.
当你打电话的时候
f.addPassenger(psg2);
您将获得NullPointException
使用列表比使用向量更好
private Vector passengerList;
您从未对此进行过初始化,因此当您的代码命中引用passengerList的任何内容时,您会得到一个空指针异常。运行时异常与编译错误是不同的概念。关于NullPointerException是什么以及如何修复它,onlien拥有丰富的知识。它是Java中最常见的运行时异常之一,通常很容易修复。请仔细阅读。您是否介意发布错误堆栈跟踪,以便我们可以进一步帮助您?请告诉我们在您的代码中实际发生异常的位置,因为搜索整个代码将是一件痛苦的事情。不要在线程“main”java.lang.NullPointerException中查看
passengerList
初始化Anywhere异常