我对java非常陌生,我正在开发一个应该模拟Mastermind游戏的程序。描述如下:用Java编写一个允许用户在计算机上玩公牛和奶牛游戏的应用程序。游戏的工作原理如下:计算机秘密选择一个4位数的数字.数字一定都不一样。然后,用户猜测该数字,计算机提供匹配数字的数量。如果匹配的数字在正确的位置,那么它就是“公牛”,如果它位于不同的位置,那么它就是“牛”。
有两个类我可以拥有:甲骨文和游戏。Oracle类生成计算机选择的4位数字,并在玩家猜测中计算公牛和奶牛的数量。游戏类从Oracle获取公牛和奶牛的数量并报告。当我运行程序时,我会得到这个错误:
错误似乎在这里:在Game.play(Game.java:34)在BullsAndCows.main(BullsAndCows.java:5)
你能帮我找出怎么回事吗?非常感谢。
发布于 2014-03-17 07:28:25
没有初始化Oracle的成员变量computer。
这是因为在Oracle的构造函数中,您没有初始化成员变量computer,而是另一个同名的变量,它是方法的本地变量。
要修复它,请在Oracle的第21行中替换如下:
Oracle computer = new Oracle();通过这一点:
computer = new Oracle();https://stackoverflow.com/questions/22448781
复制相似问题