我是c#程序員,我習慣了c#的封裝和其他東西的語法。但現在,由於某些原因,我應該用java編寫一些東西,我正在練習java一天吧!我將爲自己創建一個虛擬項目,以便讓自己更加熟悉java的oop概念我得到一個nullPointerException異常當我試圖添加一些值到另一個類的引用類
我想要做的是我想要一個名爲'Employee'的類有三個屬性(字段):firstName
,lastName
和id
。然後我想創建另一個類,名爲EmployeeArray
,它將在其內部構建一個Employee
的數組,並且可以對它執行一些操作因爲某些原因我想這個項目這樣!!) 現在我想將EmployeeArray
class.here的我的工作中的一些值添加到Employee
這麼遠:
//this is the class for Employee
public class Employee {
private String firstName;
private String lastName;
private int id;
public void SetValues(String firstName, String lastName, int id) {
this.firstName = firstName;
this.lastName = lastName;
this.id = id;
}
//this is the EmployeeArray class
public class EmployeeArray {
private int numOfItems;
private Employee[] employee;
public EmployeeArray(int maxNumOfEmployees) {
employee = new Employee[maxNumOfEmployees];
numOfItems = 0;
}
public void InsertNewEmployee(String firstName, String lastName, int id){
try {
employee[numOfItems].SetValues(firstName, lastName, id);
numOfItems++;
}
catch (Exception e) {
System.out.println(e.toString());
}
}
//and this is the app's main method
Scanner input = new Scanner(System.in);
EmployeeArray employeeArray;
employeeArray = new EmployeeArray(input.nextInt());
String firstName;
String lastName;
int id;
firstName = input.nextLine();
lastName = input.nextLine();
id = input.nextInt();
employeeArray.InsertNewEmployee(firstName, lastName, id);
的問題是,我得到一個NullPointerException異常時該應用程序想要設置的值,它發生在employeeArray
reference.I不知道我缺少什麼。任何建議?
的錯誤粘貼堆棧跟蹤請。 更改此行:'System.out.println(e.toString());'到'e.printStackTrace();'您可以自己調試原因。 – adam0404