九、jdk1.5新特性
S_壮
这个作者很懒,什么都没留下…
展开
-
1、泛型
一、简介 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”, “任意化”带来的缺点是要做显式的强制类型转换, 而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。 对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是...原创 2013-03-07 14:13:14 · 116 阅读 · 0 评论 -
2、高级for循环
一、高级for循环 for(数据类型 变量名 : 被遍历的集合(Collection)或者数组) { //........ } 二、特点 用于对存储对象的容器进行迭代 传统for和高级for有什么区别? 高级for有一个局限性,必须要有被遍历的目标(Collection或数组) 如果遍历数组,还需要对数组元素进行操作,建议用传统for循环因为可以定义角标通...原创 2013-03-10 10:37:32 · 140 阅读 · 0 评论 -
3、可变参数
一、方法的可变参数 用到函数的参数上,当要操作的同一个类型元素个数不确定的时候,可是用这个方式,这个参数可以接受任意个数的同一类型的数据。 其实就是数组参数的简写形式 但是调用函数时不用每一次都手动的建立数组对象,只要将要操作的元素作为参数传递即可。 底层隐式将这些参数封装成了数组。 使用注意:可变参数一定要定义在参数列表最后面,否则编译失败 二、示例 /** *问题...原创 2013-03-10 10:44:55 · 73 阅读 · 0 评论 -
4、静态导入
一、静态导入 导入了类中的所有静态成员,简化静态成员的书写。 如:import static java.util.Collections.*; //导入了Collections类中的所有静态成员 那么就可以直接使用其方法,而不用 Collections .方法了 But,当方法重名时,需要指定具体所属的对象或者类 当类名重名时,需要指定具体的包 ...原创 2013-03-10 10:47:59 · 89 阅读 · 0 评论 -
5、基本数据类型的自动装箱拆箱
一、自动装箱拆箱 自动装箱/拆包大大方便了基本类型数据和它们包装类地使用。 自动装箱:基本类型自动转为包装类.(int >> Integer) 自动拆箱:包装类自动转为基本类型.(Integer >> int) 在JDK1.5之前,我们总是对集合不能存放基本类型而耿耿于怀,现在自动转换机制解决了我们的问题。 Integer x = 1; x = x...原创 2013-03-22 11:20:25 · 152 阅读 · 0 评论 -
6、枚举enum
一、enum枚举 枚举是一种特殊的类,其中的每个元素都是该类的一个实例对象 为什么要有枚举 问题:要定义星期几或性别的变量,该怎么定义?假设用1-7分别表示星期一到星期日,但有人可能会写成int weekday = 0... 枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。 枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方...原创 2013-03-22 13:53:17 · 91 阅读 · 0 评论