Java学习笔记(一)——JAVA中关于对象数组的定义与使用

JAVA中关于对象数组的定义与使用

首先看下列代码

Student student[]=new Student [20];
		//注意必须重新给数组中的每个对象分配内存空间
		for(int i=0;i<20;i++)
			student[i]=new Student();
		for(int i=0;i<20;i++)
		{
			student[i].set_sname(i);
			student[i].set_snumber(i);
			student[i].set_chinesegrade();
			student[i].set_mathgrade();
			student[i].set_sciencegrade();
			student[i].set_societygrade();
		}
初次使用对象数组的时候,我觉得第一个Student student[]=new Student [20];已经为数组中的对象开辟了内存空间,所以就直接使用student[i].set_sname(i),这时候发现编译出错。

原来第一个Student student[]=new Student [20];虽然声明了对象数组,但是没有给数组中的每个对象都分配相应的内存空间,导致空指针错误。

只需要给数组中的每个对象分配相应的内存空间即可正确运行。


对象数组的初始化还有另外两种方法:
方法一:

	Student student2[]={
					new Student(),
					new Student(),
					
		};


方法二:

	Student student2[]=new Student[]{
					new Student(),
					new Student(),
					
		};


你可能感兴趣的:(Java学习笔记)