侧边栏壁纸
  • 累计撰写 793 篇文章
  • 累计创建 1 个标签
  • 累计收到 1 条评论
标签搜索

目 录CONTENT

文章目录

泛型

Dettan
2021-04-10 / 0 评论 / 0 点赞 / 159 阅读 / 279 字
温馨提示:
本文最后更新于 2022-07-23,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
相当于C++里的模板
特点
声明的时候使用了泛型但是实例化的时候不用的话,这个类型的值都会是Object类型,然后就可以什么都可以传,但是想要用传入类型的特有方法的话就要强制转换之后再用。
基本类型不能用,用包装类。例:int用Integer。
类泛型
声明: class 类名 <E>{}
使用: 类名 <string> 实例名 = new 类名<>();
方法泛型
声明: public <E> E 方法名(E e){} //<>加在返回值声明的前面。声明了<E> 也可以不使用这一类型。
使用: 方法名(参数) //自动根据参数类型设置E,即跟调用正常方法一样。
多个泛型<K , V>
泛型嵌套<Map<String,String>,Integer> ,只有使用的时候。
<? super E> 表示要是E的父类
<? extend E>
boolean addAll(Collection<? extends E> c)
//例子:TreeSet类的部分源码。
0

评论区