自從幾個小時以來一直在解決這個問題。包括通過回答以前的問題。 (我真的是新的Java,幾天前基本開始)Nullpointerexception並沒有編譯錯誤。找不到原因
它一直給我NullpointerException
s在之間的第一類和hundRegister.add(nyHund);
在第二類。
我不知道是什麼可能導致他們。有人有想法嗎?
代碼的目的(完成時)是將第三個類的對象添加到第二個類的列表中,並使用firstclass作爲「主程序」。
感謝您的幫助! 奧斯卡
頭等艙(主)
public class testning {
public static void main(String[] args) {
Hund nyHund = new Hund("Daisy", 13, "labrador", 22.3);
System.out.println(nyHund.toString());
System.out.println(nyHund);
Register.läggTillHund(nyHund);
}
}
二等:
import java.util.ArrayList;
public class Register {
private static ArrayList<Hund> hundRegister;
public static void läggTillHund(Hund nyHund){
hundRegister.add(nyHund);
System.out.println(nyHund);
}
public Register(){
hundRegister = new ArrayList<Hund>();
}
}
三等
public class Hund {
private String namn;
private int ålder;
private double vikt;
private String ras;
public Hund(String hundnamn, int hundålder, String hundras, double hundvikt) {
this.namn = hundnamn;
this.ålder = hundålder;
this.ras = hundras;
this.vikt = hundvikt;
}
public String getNamn() {
return namn;
}
public int getÅlder() {
return ålder;
}
public double getSvanslängd() {
if ("tax".equals(ras)){
return 3.7;
}else{
return ((vikt*ålder)/10);
}
}
public String toString() {
return namn + "\n" + ålder + "\n"+ras+"\n"+vikt+"\n"+getSvanslängd();
}
}
你給了我們所有的代碼,但沒有異常堆棧跟蹤。異常堆棧跟蹤是診斷問題的關鍵。 – 2014-12-04 23:32:56
我不認爲重複是非常有幫助的。他所要做的就是改變私人靜態ArrayList hundRegister;'到'私人靜態ArrayList hundRegister =新ArrayList ();' –
August
2014-12-04 23:33:58
正如我所說,這是非常新的。但這是你需要的嗎? 異常在線程 「主」 顯示java.lang.NullPointerException \t在Register.läggTillHund(Register.java:11) \t在testning.main(testning.java:8) – Oskar 2014-12-04 23:35:00