Java基础语法-泛型

一、泛型类

1.把泛型定义在类上。

2.格式:public class 类名<泛型类型1.....>。

3.泛型类型必须是引用类型。

代码示例:

public class Student<T>{

    private T name;

    public T getName() {
        return name;
    }

    public void setName(T name) {
        this.name = name;
    }

}

二、泛型方法

1.把泛型定义在方法上。

2.格式:public <泛型类型> 返回类型 方法名(泛型类型)。

代码示例:

public class Student{

    private T name;

    public T getName() {
        return name;
    }

    public void setName(T name) {
        this.name = name;
    }

}

三、泛型接口

1.把泛型定义在接口上。

2.格式:public interface 接口名<泛型类型.....>

代码示例:

public interface StudentService {
    void show(T t);
}

四、泛型通配符

泛型通配符

任意类型,如果没有明确,那么就是Object以及任意的Java类。

? extends E

向下限定,E及其子类。

? super E

向上限定,E及其父类。

代码示例:

public class GenericTest {
    public static void main(String[] args) {
        //泛型如果明确的时候前后必须一致
        ArrayList arrayList1 = new ArrayList();
        //?表示任意类型都可以
        ArrayList arrayList2 = new ArrayList();
        ArrayList arrayList3 = new ArrayList();
        ArrayList arrayList4 = new ArrayList();
        //? extends E
        ArrayList arrayList5 = new ArrayList();
        ArrayList arrayList6 = new ArrayList();
        ArrayList arrayList7 = new ArrayList();
        //? super E
        ArrayList arrayList8 = new ArrayList();
        ArrayList arrayList9 = new ArrayList();
        ArrayList arrayList10 = new ArrayList();
    }
}
class Animal{

}
class Dog extends Animal{

}
class Cat extends Animal{

} 
  

                            
                        
                    
                    
                    

你可能感兴趣的:(Java基础)