对象数组(核心)
在之前所定义的数组都属于基本类型的数组,那么对象也可以将其定义为数组,这样的操作形式称为对象数组。对象数组往往是以引用数据类型为主的定义,例如:类、接口,而且对象数组也分为两种的定义格式:
*对象数动态初始化:类名称 对象数组名称 []=new 类名称 [长度];
*对象数组的静态初始化:类名称 对象数组名称 []=new 类名称 [] {实例化对象,........};
所有的真实数据都要在堆内存中保存,
如果是对象数组的话,那么每一个对象数组元素中的内容都是对应的堆内存地址
范例:对象数组的动态初始化
class Person{
private String name;
private int age;
public Person(String n,int a) {
name=n;
age=a;
}
public String getInfo() {
return "姓名:"+name+" , 年龄:"+age;
}}
public class ArrayDemo{
public static void main(String args[]) {
//动态初始化之后对象数组中的每一个元素都是其对应数据类型的默认值
Person per[]=new Person[3];//动态初始化
per[0]=new Person("张三",1);
per[1]=new Person("李四",2);
per[2]=new Person("王五",3);
for(int x=0;x<per.length;x++) {
System.out.println(per[x].getInfo());
}
}
}
范例:对象数组的静态初始化
class Person{
private String name;
private int age;
public Person(String n,int a) {
name=n;
age=a;
}
public String getInfo() {
return "姓名:"+name+" , 年龄:"+age;
}}
public class ArrayDemo{
public static void main(String args[]) {
Person per[]=new Person[] {//静态初始化
new Person("张三",1),
new Person("李四",2),
new Person("王五",3)};
for(int x=0;x<per.length;x++) {
System.out.println(per[x].getInfo());
}
}
}
所有的真实数据都要在堆内存中保存,如果是对象数组的话,那么每一个对象数组元素中的内容都是对应的堆内存地址