54. 泛型接口

Posted 江小白谢

tags:

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

泛型接口的定义格式:
    interface 接口名<声明自定义泛型>{
        
    }

泛型接口要注意的事项:
    1.接口上自定义泛型的具体数据类型是在实现一个接口的时候指定的
    2.在接口自定义的泛型如果在实现接口的时候没有指定具体的数据类型,那么默认为Object类型

如果我们在实现接口的时候,任然不明确自己目前要操作的数据类型,我要等到创建实现类的时候指定数据类型。
延长接口自定义泛型的具体数据类型格式:
    class 类名<声明自定义泛型> implements 接口名<声明自定义泛型>{
    
    }

例如:
    class Demo1<T> implements Dao<T>{
    
    }

需求:把Integer类型集合中的元素全部加1

//定义泛型接口
interface AddInterface<T>{
    public Integer add(T t);
}

//实现类
class Math1<T> implements AddInterface<T>{

    @Override
    public Integer add(T t) {
        return (Integer)t+1;
    }
}
public class Demo4 {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<Integer>();
        list.add(1);
        list.add(2);
        Iterator<Integer> it = list.iterator();
        //实例化实现类
        Math1<Integer> m = new Math1<Integer>();
        while(it.hasNext()) {
            System.out.println(m.add(it.next()));
        }
    }
}

 

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

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

定义泛型接口

编写高质量代码改善C#程序的157个建议——建议42:使用泛型参数兼容泛型接口的不可变性

Java——泛型

带有结构的接口,通过引用使用泛型

Java 泛型接口转换