头歌学习-Java类和对象之对象数组

第1关:学习-Java类和对象之对象数组

任务描述

本关任务:定义一个 Dog 类,使用对象数组的方式创建 3 个 Dog 对象。

相关知识

所谓的对象数组,就是指包含了一组相关的对象。在使用对象数组的时候,一定要清楚一点:一定要先为数组开辟空间。因为其是引用数据类型,所以数组里面的每一个对象都是 null 值,在使用的时候,数组中的每一个对象必须分别进行实例化操作。

定义对象数组的四个方式:

  1. 静态初始化;

类名称 对象数组名[] = new 类名称[] {对象,对象......};

 
  1. // 创建对象数组的时候直接创建对象
  2. Person person[] = new Person[]{new Person(),new Person(),new Person()}
  1. 动态初始化;

     
      
    1. // 先引用一个对象数组
    2. Person person[];
    3. // 指定数组对象的大小
    4. person = new Person[3];
    5. // 循环为数组中的每一个对象进行实例化
    6. for(int i=0;i<person.length;i++)
    7. {
    8. person[i] = new Person();
    9. }
  2. 数组元素指向所定义的对象;

     
      
    1. // 引用一个数组对象
    2. Person person[];
    3. // 为数组开辟一个指定大小的空间
    4. person = new Person[3];
    5. // 对数组的每一个对象进行实例化
    6. person[0] = new Person();
    7. person[1] = new Person();
    8. person[2] = new Person();
  3. 创建对象数组,并分配对象空间。

     
      
    1. // 创建对象数组时指定空间大小
    2. Person person[] = new Person[3];
    3. // 对数组的每一个对象进行实例化
    4. person[0] = new Person();
    5. person[1] = new Person();
    6. 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]=d1;
dog[0].info();
dog[1]=d2;
dog[1].info();
dog[2]=d3;
dog[2].info();
        
        
        /********** End **********/
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值