Java 此语句是否调用构造函数obj=newchecker[10]?

Java 此语句是否调用构造函数obj=newchecker[10]?,java,Java,如何调用类检查器的所有10个对象的构造函数?obj=new checker[10]语句没有调用我想知道的构造函数的原因?obj=new checker[10];表示您正在创建一个可容纳10个checker实例的数组。这不会创建10个checker实例。因此,不会调用检查器构造函数 如何调用类的所有10个对象的构造函数 支票 在循环中或以其他方式创建checker的新实例,并将它们添加到数组中。obj=new checker[10]只是将obj设置为checker对象数组。它不会用新的跳棋填充数组

如何调用类检查器的所有10个对象的构造函数?obj=new checker[10]语句没有调用我想知道的构造函数的原因?

obj=new checker[10];表示您正在创建一个可容纳10个checker实例的数组。这不会创建10个checker实例。因此,不会调用检查器构造函数

如何调用类的所有10个对象的构造函数 支票

在循环中或以其他方式创建checker的新实例,并将它们添加到数组中。

obj=new checker[10]只是将obj设置为checker对象数组。它不会用新的跳棋填充数组。为此,您需要执行以下操作:

 class checker

{

    public checker()

    {
        System.out.println("In the constructor");
    }
}
public class StringTesting {
    static String string1;
    static String string2;
    public static void main(String[] args)
    {

        checker[] obj;
        obj=new checker[10];

    }
}

为了更一般地回答您的问题,要调用构造函数,您必须显式地调用new关键字。

您当前的代码没有创建任何checker类型的对象-它只创建一个数组,该数组能够保存对checker类型的对象的引用。最初,数组中的每个元素都有一个null值。了解数组元素值不是检查器对象很重要,它们只是引用。例如,多个元素可以包含对同一对象的引用,就像checker类型的多个变量可以包含引用同一对象的值一样。可以将数组视为变量的集合

如果要调用构造函数,则需要显式调用。例如:

obj=new checker[10];
for (int i = 0; i < obj.length; i++) {
 obj[i] = new checker();
}

您正在创建十个空框所有引用以保存十个对象的引用。要调用十个对象的构造函数,必须循环遍历这十个空框,并在每个框中存储新对象的引用。i、 e

// Names fixed to be more conventional
Checker[] checkers = new Checker[10];
for (int i = 0; i < checkers.length; i++) {
    checkers[i] = new Checker();
}

可能需要修改您的答案,以明确该数组实际上不是一个棋盘格对象数组,而是一个引用数组。
Checker[] chkArray = new Checker[10];
for (int i = 0; i < checkers.length; i++) {
    chkArray[i] = new Checker();
}