數(shù)組中存儲(chǔ)元素的類(lèi)型是引用類(lèi)型
package com.wkcto.chapter03.demo01;
/**
* 對(duì)象數(shù)組
* 數(shù)組元素是一個(gè)對(duì)象, 數(shù)組中存儲(chǔ)的是引用類(lèi)型數(shù)據(jù)
* 數(shù)組元素實(shí)際上存儲(chǔ)的是對(duì)象的引用
* 遍歷對(duì)象數(shù)組,訪問(wèn)對(duì)象的實(shí)例成員時(shí), 注意避免出現(xiàn)空指針異常
* @author 蛙課網(wǎng)
*
*/
public class Test08 {
public static void main(String[] args) {
//定義數(shù)組,存儲(chǔ)5個(gè)Person對(duì)象
Person[] personss = new Person[5];
//給數(shù)組的元素賦值, 實(shí)際上是把對(duì)象的引用保存到數(shù)組元素中
Person lisi = new Person("lisi", 18);
personss[0] = lisi;
personss[2] = new Person("feifei", 28);
//遍歷數(shù)組,輸出每個(gè)元素
for( int i = 0 ; i<personss.length; i++){
System.out.println( personss[i] );
}
//讓數(shù)組中的所有人吃飯, 遍歷數(shù)組中的Person對(duì)象, 調(diào)用eat()
for (Person person : personss) {
if ( person != null ) {
person.eat();
}
}
}
}
class Person{
String name;
int age;
//吃飯
public void eat() {
System.out.println(name + "正在吃飯....");
}
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
}