java 泛型

Posted 黄光跃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 泛型相关的知识,希望对你有一定的参考价值。

只能使用引用类型, 不能使用基本类型(int 与 Integer)

泛型类

class Point<T>{
    private T a;
    private T b;
    public Point(T a, T b){
        this.a = a;
        this.b = b;
    }
    public void say(){
        System.out.println("a: " + a + ", b: " + b);
    }
}
public class Test3 {
    public static void main(String[] args) {
        Point<Integer> point1 = new Point<>(1, 2);
        point1.say();
        Point<String> point2 = new Point<>("hello", "world");
        point2.say();
    }
}

泛型接口

interface IPoint<T>{
    void say(T t);
}
class PointImpl1 implements IPoint<String>{
    @Override
    public void say(String s) {
        System.out.println(s);
    }
}

class PointImpl2<T> implements IPoint<T>{
    @Override
    public void say(T t) {
        System.out.println(t);
    }
}
public class Test3 {
    public static void main(String[] args) {
        IPoint p1 = new PointImpl1();
        p1.say("Hello");
        IPoint<Integer> p2 = new PointImpl2<>();
        p2.say(1);
    }
}

泛型方法

public static void main(String[] args) {
        String s = say("hello");
        System.out.println(s);
    }

    // 返回类型由参数决定
    public static <T> T say(T t){
        return t;
    }

 

以上是关于java 泛型的主要内容,如果未能解决你的问题,请参考以下文章

201621123062《java程序设计》第九周作业总结

什么意思 在HashMap之前 ? Java中的泛型[重复]

这个嵌套类构造函数片段可以应用于泛型类吗?

201621123037 《Java程序设计》第9周学习总结

Java——泛型

作业09-集合与泛型