Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
分配数组,然后使用构造函数 Person.java PersonTest.java 公共类个人测试{ 公共静态void main(字符串[]args){ Person[]people=新人[20];//此行。 对于(inti=0;i_Java_Arrays_Constructor_Allocation - Fatal编程技术网

分配数组,然后使用构造函数 Person.java PersonTest.java 公共类个人测试{ 公共静态void main(字符串[]args){ Person[]people=新人[20];//此行。 对于(inti=0;i

分配数组,然后使用构造函数 Person.java PersonTest.java 公共类个人测试{ 公共静态void main(字符串[]args){ Person[]people=新人[20];//此行。 对于(inti=0;i,java,arrays,constructor,allocation,Java,Arrays,Constructor,Allocation,Yes),它是正确的 该行: Person[] people = new Person[20] 分配数组,数组中充满对null的引用,而行: new Person(NameUtils.randomFirstName(), NameUtils.randomLastName()); //this line 通过实例化类型为Person的对象并在数组中分配引用来填充它[数组]。newperson[20]创建一个数组,该数组可以容纳20个对Person对

Yes),它是正确的

该行:

Person[] people = new Person[20]
分配数组,数组中充满对
null
的引用,而行:

new Person(NameUtils.randomFirstName(),
                      NameUtils.randomLastName());  //this line

通过实例化类型为
Person
的对象并在数组中分配引用来填充它[数组]。

newperson[20]
创建一个数组,该数组可以容纳20个对
Person
对象的引用。它不会创建任何实际的
Person
对象

newperson(…)
创建一个
Person
对象

这里的关键区别在于,与C或C++不同,<代码>新的人[20 ] < /C>不为20 <代码>人< /Cord>对象分配内存。数组不包含实际对象;它只包含对它们的引用。


仅为对象Person分配内存(用空值填充)。然后您需要用特定的人(在本例中为随机姓名和姓氏)。

第二个“新人”是正确的,假设您想在数组“人”的每个条目中插入一个名字和姓氏随机的新人至于发布代码,通常很容易复制粘贴代码,对于未预览为代码的每一行,可以插入四个空格。我希望这解决了您的问题,我不完全确定您的意思。(编辑器中有一个帮助按钮(
,右上角)这有一些如何设置代码格式的示例。简单地说,选择所有代码,然后单击
{}
按钮,或者点击Ctrl+K)ok,我知道它是怎么做的。->选择文本后,按Ctrl+K。谢谢..ok。然后“new”关键字不仅用于分配。它还可用于调用构造函数而无需分配。(因为分配可能在以前完成)不,
new
处理分配和构造。数组没有构造函数,但
new Person[20]
都分配和初始化数组。在Java中,分配与构造不是分开处理的。
new Person[20]
为包含20个引用的数组分配内存,然后将其初始化为
Person[]
new Person(…)
Person
对象分配内存,然后调用
Person
构造函数。
Person[] people = new Person[20]
new Person(NameUtils.randomFirstName(),
                      NameUtils.randomLastName());  //this line
Person[] people = new Person[20];