第1关:学习-Java类和对象之对象数组
任务描述
本关任务:定义一个 Dog 类,使用对象数组的方式创建 3 个 Dog 对象。
相关知识
所谓的对象数组,就是指包含了一组相关的对象。在使用对象数组的时候,一定要清楚一点:一定要先为数组开辟空间。因为其是引用数据类型,所以数组里面的每一个对象都是 null 值,在使用的时候,数组中的每一个对象必须分别进行实例化操作。
定义对象数组的四个方式:
- 静态初始化;
类名称 对象数组名[] = new 类名称[] {对象,对象……};
// 创建对象数组的时候直接创建对象
Person person[] = new Person[]{new Person(),new Person(),new Person()}
-
动态初始化;
// 先引用一个对象数组
Person person[];
// 指定数组对象的大小
person = new Person[3];
// 循环为数组中的每一个对象进行实例化
for(int i=0;i
{
person[i] = new Person();
}
-
数组元素指向所定义的对象;
// 引用一个数组对象
Person person[];
// 为数组开辟一个指定大小的空间
person = new Person[3];
// 对数组的每一个对象进行实例化
person[0] = new Person();
person[1] = new Person();
person[2] = new Person();
-
创建对象数组,并分配对象空间。
// 创建对象数组时指定空间大小
Person person[] = new Person[3];
// 对数组的每一个对象进行实例化
person[0] = new Person();
person[1] = new Person();
person[2] = new Person();
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。
测试说明
平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。 可在右侧“测试结果”区查看具体的测试集详情。
开始你的任务吧,祝你成功!
/**
* 任务:使用对象数组的方式创建 3 个 Dog 对象
* 类名为:Dog
* 该类为 Dog 的基本属性
*/
public class Dog {
private String name; // 小狗名称
private String type; // 小狗品种
private int age; // 小狗年龄
private String hobby; //小狗爱好
public Dog(){
}
public Dog(String name, String type, int age, String hobby) {
this.name = name;
this.type = type;
this.age = age;
this.hobby = hobby;
}
// 获取Dog姓名
public String getName() {
return name;
}
// 设置Dog姓名
public void setName(String name) {
this.name = name;
}
// 获取Dog种类
public String getType() {
return type;
}
// 设置Dog种类
public void setType(String type) {
this.type = type;
}
// 获取Dog年龄
public int getAge() {
return age;
}
// 设置Dog年龄
public void setAge(int age) {
this.age = age;
}
// 获取爱好
public String getHobby() {
return hobby;
}
// 设置爱好
public void setHobby(String hobby) {
this.hobby = hobby;
}
// Dog的详细信息
public void info(){
System.out.printf("小狗名称:%s\n品种:%s\n小狗年龄:%d\n小狗爱好:%s\n",name,type,age,hobby);
}
public static void main(String[] args) {
Dog d1 = new Dog("Tom", "哈士奇",2,"拆家");
Dog d2 = new Dog("jerry", "中华田园犬",3,"护家");
Dog d3 = new Dog("旺财","柯基",2,"吃喝玩");
// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
/********** Begin **********/
// 将三个狗的对象放进对象数组中,并依次调用该对象的info方法
Dog dog[]=new Dog[3];
dog[0]=new Dog();
d1.info();
dog[1]=new Dog();
d2.info();
dog[2]=new Dog();
d3.info();
/********** End **********/
}
}