好的,所以我正在为我的 java 课程部分做作业,我坚持的是:
“实施一项 createparliamentMembers 操作,这将创建一个有 80 名成员的特定议会。”
所以我已经用它的方法创建了构造函数。这就是我编写使用构造函数创建对象的操作的方式:
public static void createparliamentMembers(){
Member[] array = new Member[75];
for(int i = 0; i < array.length; i++)
{
if (i < 35) array[i] = new Member(i, "Blue");
else array[i] = new Member(i,"Red");
}
Legislator[] leg = new Legislator[3];
for (int i = 0 ; i < leg.length; i++){
leg[i] = new Legislator(i, "Impartial");
}
Leader[] lead = new Leader[2];
for (int t = 0; t < lead.length; t++){
if (t < 1) lead[t] = new Leader(1, "Red");
else lead[t] = new Leader(2, "Blue");
}
问题是数组和对象似乎只存在于创建它们的操作中,当我尝试运行创建的对象的方法时,它们不起作用,因为驱动程序类无法识别数组。另一方面,当我将它用作驱动程序的正常部分时,它运行良好并且对象的所有方法都正常工作。
编辑:好的,即使我在 createparliamentMembers(); 之外初始化它们,我仍然遇到与以前相同的问题;
以下代码是我用来测试方法的驱动程序:它一直说有一个:
Driver.main(Driver.java:11) 的线程“main”java.lang.NullPointerException 中的异常,代码数组 [1].FlipCoin(); 因为我试图从创建的对象中使用方法 Flipcoin,但它不起作用。
public static void main(String [] args) {
Commands.createparliamentMembers();
array[1].FlipCoin();
}