课堂编程实践
创建学生类的泛型类, 包含姓名、成绩、出生日期属性。并通过传入类型实参建立学生类的多个实例。
import java.util.Date;
class Student<T1,T2,T3> {
//类型形参变量作用于属性的类型
private T1 name;
private T2 age;
private T3 birthDay;
//类型形参变量作用于构造方法的参数类型
public Student(T1 name,T2 age,T3 birthDay) {
this. name=name;
this. age=age;
this. birthDay=birthDay;
}
//类型形参变量作用于方法的参数类型
public void setName(T1 name) {
this. name=name;
}
public void setAge(T2 age) {
this. age=age;
}
public void setBirthDay(T3 birthDay) {
this. birthDay=birthDay;
}
//类型形参变量作用于方法的返回值类型
public T1 getName() {
return name;
}
public T2 getAge() {
return age;
}
public T3 getBirthDay() {
return birthDay;
}
}
public class Example {
public static void main(String[] args) {
Student stu=new Student<String,Integer,String>("张三",85,"2001.06.30");
System.out.println(stu.getName()+"..."+stu.getName().getClass());
Date date =new Date();
Student stu2=new Student<String,Integer,Long>("张三",85,date.getTime()-100000000);
System.out.println(stu2.getBirthDay()+"..."+stu2.getBirthDay().getClass());
}
}
运行结果: