自从几个小时以来一直在解决这个问题。包括通过回答以前的问题。 (我真的是新的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