[JAVA基础]JAVA中为什么引入范型?
来源:互联网 发布:仿真软件proteus6 编辑:程序博客网 时间:2024/06/05 16:35
原文:https://docs.oracle.com/javase/tutorial/java/generics/why.html
个人译文:
简而言之,范型 就是指在定义类、接口或者方法时,可以将类型(指类或者接口)变成参数。这一点很像在普通方法声明中的形式参数,类型参数(type parameters)可以随着不同的输入,让你重复使用相同的代码。与普通方法声明中不同的是,传给形式参数的是变量值,而传给类型参数的是类型(类或则接口)
使用范型的代码将比不使用范型的代码具有以下好处:
1.在编译期执行更加强健的类型检查。
Java编译器对范型代码使用更佳强健的类型检查,如果违反了类型安全,则将报告错误。修正编译时错误比修正运行期错误简单多了,运行期错误很难定位。
2.消除类型转换的声明
下面没有使用范型的代码片段需要用到类型转换声明。(注意加粗部分)
List list = new ArrayList();list.add("hello");String s = (<strong>String</strong>) list.get(0);
而同样的代码,使用了范型后,则不需要类型转换声明。
List<String> list = new ArrayList<String>();list.add("hello");String s = list.get(0); // 不需要声明类型转换
3.程序员可以实现范型算法
用了范型后,程序员可以实现针对不同类型的集合的范型算法,该算法可以被定制化,并且是类型安全的、更佳易于阅读。
0 0
- [JAVA基础]JAVA中为什么引入范型?
- java中为什么要引入内部类
- java中为什么要引入匿名类?
- 为什么要在JAVA,C++等集合中引入迭代器
- java为什么引入异常处理机制
- Java中引入泛型的好处
- C#基础-为什么引入委托
- Java基础-为什么要抽象?
- Unsafe--Java为什么会引入及如何使用Unsafe
- Java为什么会引入及如何使用Unsafe
- java基础 2、char型变量中能不能存贮一个中文汉字?为什么?
- 在java项目中引入dll文件
- java项目中引入Junit测试库
- java web项目中引入jquery easyui
- 在Java项目中引入日志
- JAVA中引入ECHARTS报表(柱状图)
- Java中为什么要使用泛型?
- 【Java基础】JAVA中重写equals()方法为什么要重写hashcode()方法?
- 使用Redis SETNX 命令实现分布式锁
- 【SQL】10g字符串处理函数regexp_substr的用法示例2
- 设计模式
- java将文本内容读入到List中
- POJ 1987 Distance Statistics (树的分治)
- [JAVA基础]JAVA中为什么引入范型?
- Unity3D Shaderlab 学习记录
- 更新Xcode7后网络请求数据问题?
- 大二一年的感受小结
- C++动态链接库DLL-非MFC动态库
- java中Collection与Collections
- 推荐的编程网站
- jsp日历实现
- javaSE 学习笔记