20150802-泛型

来源:互联网 发布:aion捏脸数据 编辑:程序博客网 时间:2024/06/05 10:21

一、格式

public class Student <T,E extends Pet> {}public class Student<T> {}

二、什么时候使用

在集合框架中常见,使用集合时,将集合中要存储的数据类型作为参数传递到<>中即可。

三、泛型类

什么时候用泛型类?
答:当类中要操作的引用数据类型不确定时,早起定义Object来扩展,现在定义泛型来扩展。

public class Student<T,E extends Pet> { //T和E    private String name;    private T clothes;    private E pet;    private int age;    public Student(String name,int age){    }    public void setClothes(T clothes){  //set方法        this.clothes=clothes;    }    public T getClothes(){  //get方法        return clothes;    }    public E getPet() {   //get方法        return pet;    }    public void setPet(E pet) {   //set方法        this.pet = pet;    }    public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }}

用时:

public class Test01 {    public static void main(String[] args) {        Student<NaZhuang,Dog> stu = new Student<>("zhangsan",28);        NaZhuang nz = stu.getClothes();        Dog dog = stu.getPet();    }}

四、泛型方法

目的:让不同的方法可以操作不同的类型,且类型不确定,可以将泛型定义在方法上。

class People{    public <T> void show(){    ……    }}

五、静态方法泛型

静态方法不可以访问类上定义的泛型,如果静态方法操作的应用数据类型不确定,可以将泛型定义在方法上。
public static <w> void method(W t)
0 0