NullPointerException运行时错误

时间:2014-03-17 07:23:02

标签: java class nullpointerexception

我对java很新,并且正在开发一个应该模拟Mastermind游戏的程序。以下是描述: 用Java编写应用程序,允许用户在计算机上玩Bulls and Cows游戏。该游戏的工作原理如下:计算机秘密选择一个4位数字。数字必须全部不同。然后用户猜出号码,计算机提供匹配数字的数量。如果匹配的数字位于正确的位置,它就是" bull",如果它位于不同的位置,那么它就是"牛"

我可以使用两个类:Oracle和Game。 Oracle类生成计算机选择的4位数字,并计算玩家猜测中的公牛和母牛数量。游戏类从Oracle获取公牛和奶牛的数量并报告它。我运行程序时收到此错误:

错误似乎在这里:     在Game.play(Game.java:34)     在BullsAndCows.main(BullsAndCows.java:5)

你可以帮我找出错误吗?非常感谢。

these are the images of Oracle and Game classes as well as the main method

1 个答案:

答案 0 :(得分:0)

Oracle的成员变量computer未初始化。

那是因为在Oracle的构造函数中,你没有初始化成员变量computer,而是另一个具有相同名称的变量,这是该方法的本地变量。

要解决此问题,请在Oracle第21行上将其替换为:

Oracle computer = new Oracle();

由此:

computer = new Oracle();