您的位置:首页 > 其它

20150802-泛型

2015-08-02 19:55 309 查看

一、格式

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)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: