对象作为类的成员变量的程序设计

对象作为类的成员变量的程序设计。设计类Student和类Date, 其中Student的成员变量birthday是date类的对象,类Student的其他成员和类Date的成员按常规设计,特别要注意两个类的构造函数设计;在主函数中利用对象数组管理5个学生的数据,分别计算男生和女生的平均年龄并输出。

 package com.a;

public class Student {
private String name;
private int age;
private Date birthday;
private String gender;

public Student(String name, int age, Date birthday, String gender) {
    super();
    this.name = name;
    this.age = age;
    this.birthday = birthday;
    this.gender = gender;
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}


public String getGender() {
    return gender;
}
public void setGender(String gender) {
    this.gender = gender;
}
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}
public Date getBirthday() {
    return birthday;
}
public void setBirthday(Date birthday) {
    this.birthday = birthday;
}
@Override
public String toString() {
    return "Student [name=" + name + ", age=" + age + ", birthday=" + birthday + ", gender=" + gender + "]";
}
public Student() {
    super();
}

}

 package com.a;

public class Date {
private String birth;

public String getBirth() {
    return birth;
}

public void setBirth(String birth) {
    this.birth = birth;
}

public Date(String birth) {
    super();
    this.birth = birth;
}

@Override
public String toString() {
    return "Date [birth=" + birth + "]";
}

}

 package com.a;

public class Test {
public static void main(String[] args) {
    Student [] students = new Student[5];
    int boyAge = 0;
    int girlAge = 0;
    int flag = 0;
    for (int i = 0; i < students.length; i++) {
        if(i/2==0){
            students[i] = new Student("kim"+i, i+10, new Date("2000-12-12"),"男");
            boyAge +=students[i].getAge();
            flag++;
        }else{
            students[i] = new Student("kim"+i, i+10, new Date("2000-12-12"),"女");
            girlAge +=students[i].getAge();
        }
    }
    float boyAvgAge = boyAge/flag;
    float girlAvgAge = boyAge/(students.length-flag);
    System.out.println("男生的平均年龄为:"+boyAvgAge+"女生的平均年龄:"+girlAvgAge);
}
}