java的泛,java_泛型
此为毕向东老师的上课笔记,搬运到此只为方便自己查看
泛型:jdk1.5以后出现的安全机制
好处:
1.将运行时的问题ClassCastException转到了编译时期
2.避免了强转的麻烦
<>:什么时候用?
答:当操作的引用数据类型不确定的时候就用<>,将要操作的引用数据类型传入即可,其实<>就是一个用于接收具体引用数据类型的参数范围
在程序中只要用到了带有<>的类或者接口,就要明确传入的具体引用数据类型
泛型技术是给编译器使用的技术,用于编译时期,确保了类型的安全,运行时,会将泛型去掉,生成的class文件中是不带泛型的,这个称为泛型的擦除
泛型在集合中的应用:
Person类是已定义类
import java.util.Iterator;
import java.util.TreeSet;
public class GenericDemo {
public static void main(String[] args) {
TreeSet ts = new TreeSet();
ts.add(new Person("lisi",12));
ts.add(new Person("lisi2",13));
ts.add(new Person("lisi3",14));
ts.add(new Person("lisi4",15));
Iterator it = ts.iterator();
while(it.hasNext()) {
Person p = it.next();
System.out.println(p);
}
}
}
运行结果:Exception in thread "main" java.lang.ClassCastException: collectiondemo.Person cannot be cast to java.lang.Comparable
解决:使Person类继承Comparable接口,重写compareTo(Person p)方法,
public int compareTo(Person p){
int temp = this.age - p.age;
return temp ==0?this.name.compareTo(p.name):temp;
}
标签:java,数据类型,ts,Person,泛型,new
来源: https://www.cnblogs.com/dengbiao/p/12409560.html
java的泛,java_泛型相关推荐
- 0.Java进阶学习之泛型
1. 什么是泛型? 泛型是Java SE 1.5的新特性. "泛型"意味着编写的代码可以被不同类型的对象所重用. 泛型的本质是参数化类型. 也就是说,泛型是将所操作的数据类型作为参 ...
- Java这个高级特性-泛型,很多人还没用过!
点击关注公众号,Java干货及时送达 泛型是 Java 的高级特性之一,如果想写出优雅而高扩展性的代码,或是想读得懂一些优秀的源码,泛型是绕不开的槛.本文介绍了什么是泛型.类型擦除的概念及其实现,最后 ...
- Java基础篇:泛型与类型擦除
一.什么是泛型: 泛型的本质是 参数化类型,也就是说 将所操作的数据类型 指定为一个参数,在不创建新类的情况下,通过参数来指定所要操作的具体类型(类似于方法中的变量参数,此时类型也定义成参数形式),也 ...
- yii2数组转为对象_好程序员Java学习路线分享java为什么不支持泛型数组
本篇文章好程序员为大家一下java为什么不支持泛型数组,希望对大家有所帮助. public class Pair { public void info( ) { System.out.println( ...
- Java笔记05-Collection、泛型、迭代器
Java笔记05-Collection.泛型.迭代器 [Collection.泛型] 主要内容 Collection集合 迭代器 增强for 泛型 第一章 Collection集合 1.1 集合概述 ...
- Java核心篇之泛型--day5
Java核心篇之泛型–day5 泛型是JDK5时引入的一个新特性,泛型提供了编译时类型安全检查的机制,该机制允许程序猿在编译时检测到非法的类型输入. 泛型的本质是参数化类型,也就是说操作的类型被指定为 ...
- 【转载】JAVA的泛型和C++的模板的区别与联系
一.概述 泛型本质上是提供类型的"类型参数",它们也被称为参数化类型(parameterized type)或参量多态(parametric polymorphism).其实泛型思 ...
- java invoke 泛型_如何通过java反射调用含有泛型数组参数的方法
最近在看一个算法课程,老师用的是c++的template和函数指针来完成一个实现,于是我想用java通过反射和泛型来完成,但是出现了问题. 希望通过java反射以及泛型来实现动态测试SortClass ...
- 剖根问底:Java 不能实现真正泛型的原因是什么?
大家好,我是二哥呀! 今天我来给大家讲一下,Java 不能实现真正泛型的原因是什么? 本文已同步至 GitHub <教妹学 Java>专栏,风趣幽默,通俗易懂,对 Java 初学者亲切友善 ...
最新文章
- Docker基础之九: 管理容器的数据
- 前端学习(571):margin负值下的两栏自适应
- nodejs怎么与c语言通信费是什么,NodeJS介绍与使用
- .NPT 扩展名格式文件类型及打开方式分析:首次渗入 XR 内容领域
- jni直接转byte_JNI jbyteArray转char*
- python连接mongodb的库文件pymongo
- python 读取文本文件_如何在Python中读取大文本文件
- 微信小程序之文本内的p标签去除
- python 人民币数字转汉字大写金额
- 100天精通Andriod逆向——第4天:各种抓包工具学习
- youtube爬虫搭建
- (强烈推荐)基于SSM和BootStrap的共享云盘系统设计(项目开发与实现:注册/登录)
- echarts实现甘特图
- ukf源程序 matlab,《卡尔曼滤波原理及应用-MATLAB仿真》程序-5.1UKF
- 麻球繁衍(Tribbles 概率dp)
- 新海诚没有参与制作的作品_这种新海诚风的摄影作品是怎么制作的?
- 本地ecshop网站怎么上传到服务器,ecshop 上传服务器
- QT FTP上传文件
- 实训一 思科交换机基础配置
- 新一代私有云来了!看透基于开源生态的产品化