Java 泛型的使用

本文旨在为完全不懂泛型,但是感觉泛型很神奇,想试一试的小伙伴使用,没有过于深入挖掘原理,文章相对肤浅。不喜勿喷哦。

一、类 泛型使用

泛型类必须为引用类型的
代码格式

public class TestTwo<T> {

    private T t;

    public T getT() {
        return t;
    }

    public void setT(T t) {
        this.t = t;
    }
}

使用类

  public static void main(String[] args) {

        TestTwo<String> stringTest = new TestTwo<>();

        stringTest.setT("中国");

        System.out.println(stringTest.getT());

        TestTwo<Integer> integerTest = new TestTwo<>();

        integerTest.setT(1);

        System.out.println(integerTest.getT());

    }

当泛型传入什么类型,则可以处理什么类型数据

二、泛型方法使用

泛型方法的写法:

public class TestTwo {

    public <T> void show(T t) {
        System.out.println("泛型方法传入数据:" + t);
    }
}

泛型方法使用:

 public static void main(String[] args) {

        TestTwo testTwo = new TestTwo();

        testTwo.show("China");

        testTwo.show(1);
    }

运行结果:
Java 泛型的使用

三、泛型接口

泛型接口写法:

public interface TestTwo<T> {

    public abstract void test(T t);
}

泛型实现方式:

    static class TestImpl<T> implements TestTwo<T> {

        @Override
        public void test(T t) {
            System.out.println(t);
        }
    }

泛型接口使用:

 public static void main(String[] args) {

        TestImpl<String> testTwo = new TestImpl<String>();
        testTwo.test("泛型测试接口");
    }

运行结果:
Java 泛型的使用

四、泛型通配符的使用

泛型通配符有三种
1)、<?> 任意通配符
2)、? extends E 向下限定 ,E及其子类
3)、? super E 向上限定 ,E及其父类

上一篇:初识RxJava(五)过滤类 操作符


下一篇:Android studio使用svn进行代码版本控制