第十三节——泛型

Posted 想学习安全的小白

tags:

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

泛型的学习

一、泛型的概述

  1. 定义时使用,在函数具体调用时传入具体的参数类型

二、泛型的使用

  1. 格式一:<类型>:指定一种类型的格式。
  2. 格式二:<类型1,类型2…>:指定多种类型的格式,多种类型之间用逗号隔开
  3. 举例
//定义一个类,使用T代表泛型
public class Test1<T> {
    public T i;
}
//生成类对象时指定具体类型
Test1<String> t1 = new Test1<>();
Test1<Integer> t2 = new Test1<>();

三、泛型类

//定义一个类,使用T代表泛型
public class Test1<T> {
    public T i;
}
//生成类对象时指定具体类型
Test1<String> t1 = new Test1<>();
Test1<Integer> t2 = new Test1<>();

四、泛型方法的使用

  1. 用泛型替代方法重载
  2. 举例
//定义一个类,类里面使用泛型定义方法
public class Test1{
    public <T> void show(T t){
        System.out.println(t);
    }
}
//使用泛型方法
Test1 t1 =new Test1();
t1.show(1);
t1.show("qwe");

//定义多个泛型
public class Test1{
    public <T, A> void show(T t, A a){
        System.out.println(t);
        System.out.println(a);
    }
}
//使用
Test1 t1 =new Test1();
t1.show(1,"qwe");

五、泛型接口

  1. 格式:修饰符 interface 接口名 <类型> {},eg:public interface Inter <T>{}
  2. 举例
//定义一个泛型接口
public interface Inter <T> {
    public abstract void show(T t);
}
//定义一个类实现接口
public class Test2<T> implements Inter<T>{
    @Override
    public void show(T t) {
        System.out.println(t);
    }
}
//使用类
Test2<String> t2 = new Test2<>();
t2.show("qwe");

方法二:

//定义一个类使用泛型方法
public interface Inter {
    public abstract <T> void show(T t);
}
//类实现接口
public class Test2 implements Inter{
    @Override
    public <T> void show(T t) {
        System.out.println(t);
    }
}
//使用
Test2 t2 =new Test2();
t2.show(123);

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

C#第十三节课

ES6 第十三节 Set和WeakSet数据结构

centos mysql 实战 第十三节课

第十三节20181207

centos mysql 优化 第十三节课

OpenGL第十三节:矩阵变换