days14--泛型
Posted 安小猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了days14--泛型相关的知识,希望对你有一定的参考价值。
泛型:
表示所有类型
提供了编译时类型安全检测机制,允许在编译时期检测到非法数据类型
本质就是参数类型化,没有调用/使用之前可以表示所有的数据类型(形参),调用/使用时给上具体的数据类型(实参);
格式: <标识>:标识可以随便给,常用E,T,K,V
<标识1,标识2…标识n>:标识可以有多个,以逗号分割
注意: 在具体调用时给定的类型可以看成实参,实参只能是引用数据类型(类)
泛型方法:
格式:
public static 泛型 返回值类型(参数){}
public 泛型 返回值类型(参数){}
泛型类:
格式: public class 类名<泛型>{}
注意: 可以再定义泛型方法
类中泛型可以能多个,多个泛型都是独立的
泛型接口
格式: public interface 接口<泛型>{}
注意: 可以再定义泛型方法 类中泛型可以有多个,多个泛型都是独立的
实现接口时,接口没有指定泛型,所有方法上的泛型都会被Object替换
实现接口时,接口指定泛型,泛型方法上的泛型还是T,使用泛型的方法被指定的数据类型替换
注意: 没有指定泛型,泛型会被Object替换(多态)
泛型不能指定基本数据类型,可以给基本数据类型的值
泛型没有使用之前指所有的引用数类型(本质就是一个一个的实体类),而实体类都直接或间接继承Object(多态)
可变参数
概述: 可变参数就是方法的参数个数可以发生变化
格式:修饰符 返回值类型 方法名(数据类型…变量名){}
范例:public static void sum(int…i)
注意: 可变参数其实就是一个集合
如果方法中有多个参数,并包含可变参数,可变参数放在最后
不能同时使用多个可变参数
以上是关于days14--泛型的主要内容,如果未能解决你的问题,请参考以下文章
Java 泛型泛型用法 ( 泛型类用法 | 泛型方法用法 | 泛型通配符 ? | 泛型安全检查 )
Java 泛型泛型简介 ( 泛型类 | 泛型方法 | 静态方法的泛型 | 泛型类与泛型方法完整示例 )