我试图让这个Java的运动,但我得到一个NullPointerException,我不明白为什么NullPointerException异常,不明白为什么
public class CV
{
private String nome;
private HashSet<Pubblicazione> pubblicazioni;
public CV(String nome)
{
this.nome = nome;
}
public void aggiungiPubblicazione(Pubblicazione pub)
{
pubblicazioni.add(pub);(*)
}
public String getNome(){return nome;}
public HashSet<Pubblicazione> getPubblicazioni(){ return pubblicazioni; }
}
public class ProfEvaluator
{
private CV curriculum;
public ProfEvaluator(CV curriculum){ this.curriculum = curriculum; }
public static void main(String[] args)
{
CV cv = new CV("Mario Rossi");
cv.aggiungiPubblicazione(new Pubblicazione("pub1",10, "Mario Rossi", "Luigi Bianchi", "Giuseppe Verdi")); (*)
cv.aggiungiPubblicazione(new Pubblicazione("pub2",10, "Mario Rossi", "Giuseppe Verdi"));
}
}
输出是:
Exception in thread "main" java.lang.NullPointerException
at CV.aggiungiPubblicazione(CV.java:18)
at ProfEvaluator.main(ProfEvaluator.java:53)
我使用eclipse进行了调试,并且没有NullPointers。 在标有(*)的行中抛出异常(由错误消息指示的行是错误的,因为我只粘贴了我认为与错误有关的程序的某些部分)
如果你不处理与Java 7,更换'=新的HashSet <>();通过''=新的HashSet() ;' –
2013-05-01 14:04:31