构造函数未定义.(此处使用数组)



所以我学校作业的目标是通过Dwarves类中的构造函数打印数组的元素。

数组应该包含对象,每个对象都应该有自己的名称。

但是,当我尝试在main中创建一个对象时,该对象希望我在该对象的默认构造函数中放入一个字符串值。。。那么,如何在main中使用构造函数打印数组数据呢?给我的矮人班。

package prac11;
public class Dwarves {
Dwarves[] speler;{
speler = new Dwarves[8];    
}
public String name;
Dwarves(String name) {
this.name = name;
}
public void generate() {

speler[0] = new Dwarves("Muir");
speler[1] = new Dwarves("Buith");
speler[2] = new Dwarves("Gort");
speler[3] = new Dwarves("Coll");
speler[4] = new Dwarves("Duir");
speler[5] = new Dwarves("Quert");
speler[6] = new Dwarves("Nion");
speler[7] = new Dwarves("Gus");

//  name[0] = "Muir";
//  name[1] = "Buith";
//  name[2] = "Gort";
//  name[3] = "Coll";
//  name[4] = "Duir";
//  name[5] = "Quert";
//  name[6] = "Nion";
//  name[7] = "Gus";

}
public void identify() {
for (int i = 0; i < speler.length; i++) {
System.out.println("I am " + speler[i]);
}
}
public void killDwarf(String name) {

}
}

对于我的主要

package prac11;
public class SnowWhite {
public static void main(String[] args) {

Dwarves figure = new Dwarves();
figure.generate();
figure.identify();
}
}

edit:不知道如何嵌入代码。:(代码是用Java编写的。

代码看起来更像java。

你有一个班级试图容纳一个侏儒和一个侏儒集合。这不起作用。

类应该是Dwarf(),它代表一个单独的矮星。为此,构造函数是正确的;它接受了侏儒的名字。

generate()函数应该在类之外。此函数将创建侏儒实例的集合。您可以为此创建一个新的类,但java已经有几个可以使用的集合类。

最新更新