由于某种原因,我得到一个空指针异常,我认为它是因为我的对象可能超出了我的警告对话框的范围?我可能错了..
//private Lecture lecture;
private LectureManager lectureManager;
addwork.setPositiveButton("Add", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
EditText eweight = (EditText) ((AlertDialog)dialog).findViewById(99);
EditText emark = (EditText) ((AlertDialog)dialog).findViewById(100);
String coursename = ecoursename.getText().toString();
try {
if ((eweight.getText().toString().trim().equals("")) ||
(emark.getText().toString().trim().equals(""))) {
throw new InvalidInputException();
} else {
Double tmark = Double.parseDouble(emark.getText().toString());
Double tweight = Double.parseDouble(eweight.getText().toString());
Work work = new Work(tmark, tweight);
Lecture lecture = new Lecture(coursename);
lecture.addEvent(work);
lectureManager.addClass(lecture);
}
我的nullpointer异常位于"讲道管理课程(讲座);"而且我不确定为什么。 addClass是一个在类讲师管理器中定义的函数。我检索eweight,emark和coursename的信息的字段在警报对话框之外被实例化,并且都是最终的。提前谢谢!
答案 0 :(得分:0)
讲座经理从未初始化。
私人讲座经理讲课=新LectureManager();
答案 1 :(得分:0)
我认为您已声明并且尚未初始化讲座变量。也是最后的。
private final LectureManager lectureManager;
//somewhere in code instantiate it
lectureManger = new LectureManager();
// then your code
希望这会有所帮助。