jdk1.5
文章平均质量分 71
leek2000
这个作者很懒,什么都没留下…
展开
-
JDK 1.5引入的新特性 -- 泛型
1. 引言JDK 1.5 中引入了新的语言成分, 泛型(Generics)是其中较为重要的一个.简单的泛型(Defining Simple Generics)以下代码摘自java.util包的List接口和Iterator接口的定义:public interface List { void add(E x); Iterator iterator();}public interface It原创 2005-02-28 09:00:00 · 1691 阅读 · 0 评论 -
逐渐挖掘Varargs
更简单的传递个数可变的实参到J2SE 1.4为止,一直无法在Java程序里定义实参个数可变的方法——因为Java要求实参(Arguments)和形参(Parameters)的数量和类型都必须逐一匹配,而形参的数目是在定义方法时就已经固定下来了。尽管可以通过重载机制,为同一个方法提供带有不同数量的形参的版本,但是这仍然不能达到让实参数量任意变化的目的。然而,有些方法的语义要求它们必须能接受个数可变的原创 2005-04-15 11:12:00 · 2892 阅读 · 0 评论 -
[J2SE 5.0专题]虚拟机
随着J2SE 5.0的发布,JavaTM HotSpot虚拟机也随之更新。新的变化包括:类数据共享、垃圾收集、服务器级机器侦测、线程优先级变化、致命错误处理、高精度计时支持等。接下来我们大家一起来一个一个的看。[类数据共享]可能在以往的Java版本中,大家会对Java应用程序的启动速度颇有微词,于是SUN在发布新的JRE时在这方面作了改善。这就是类数据共享。简单的讲,类数据共享就是在JRE安装时自原创 2005-04-05 09:02:00 · 2768 阅读 · 0 评论 -
[J2SE 5.0专题]并发工具包
Doug Lea是Java并发编程的大拿,我想不少人都应该听说过那一本Concurrent Programming in JavatmDesign principles and patterns,几乎是学习Java并发编程必看的一本书。这回Doug Lea牵头的JSR-166在J2SE 5.0中引入的新的并发工具包绝对值得关注。新引入的java.util.concurrent包,以及背后的实现和A原创 2005-04-05 09:05:00 · 3057 阅读 · 0 评论 -
[J2SE 5.0专题]自动装箱和自动拆箱
看过.NET基础的朋友可能对这个装箱和拆箱的概念并不陌生。首先,我们必须明确一点,在Java中,有两种截然不同的数据类型:值类型和引用类型。值类型的数据不是对象,因而所占的内存和资源都相对较少,但是不能作为对象调用其toString()、hashCode()、getClass()、equals()等等方法,也不能被直接加入到集合中;引用类型的数据是一个一个的对象,占用内存和资源较多,但是提供丰富的原创 2005-04-05 09:04:00 · 2844 阅读 · 0 评论 -
[J2SE 5.0专题]可变长度参数
顾名思义,可变长度参数就是指在方法的参数体中,只要定义恰当,我们可以使用任意数量的参数,类似于使用对象数组。在J2SE 5.0中,一个新的语法被引入,就是在参数类型名称后面加上 ... ,表示该方法可以接受多个该类型的参数。需要说明的是可变长度参数必须放在参数列表的最后,且一个方法只能包含一个这样的参数。需要注意的是,这个语法只是在声明一个方法的时候管用,真正当我们具体实现这个方法时,我们通常都不原创 2005-04-05 09:03:00 · 2803 阅读 · 0 评论 -
[J2SE 5.0专题] 新的RowSet子接口
RowSet是javax.sql包下面的一个接口,继承自ResultSet接口,在1.4版本中被引入。不过当时只有孤零零的这么一个接口,JDK并没有提供更多细分的类别。我们来看看5.0版本中javax.sql.RowSet新增了哪些有趣的子接口。继承关系大概是这样的:ResultSet |-- RowSet |-- Cache原创 2005-04-05 09:01:00 · 2652 阅读 · 0 评论 -
J2SE 5.0专题 增强的for循环
你是否已经厌倦了每次写for循环时都要写上那些机械的代码,尤其当你需要遍历数组或者Collection,如: public void showAll (Collection c) { for (Iterator iter = c.iterator(); iter.hasNext(); ) { System.out.println(iter.next().toString()); } }原创 2005-04-05 09:00:00 · 2557 阅读 · 0 评论 -
[J2SE 5.0专题]泛型
大凡用过C/C++的朋友对“泛型”这个词都不会陌生吧?我相信有过一些Java编码经验的朋友或多或少也遇到过使用集合类的方法时必须要手工做类型转换的情况。看下面的例子:import java.util.ArrayList;import java.util.Iterator;public class MyGenerics { public static void main(String[] ar原创 2005-04-05 08:59:00 · 2523 阅读 · 0 评论 -
[J2SE 5.0专题]类型安全的枚举
在细述J2SE 5.0中引入的类型安全枚举的用法之前,我想先简单介绍一下这一话题的背景。我们知道,在C中,我们可以定义枚举类型来使用别名代替一个集合中的不同元素,通常是用于描述那些可以归为一类,而又有限数量的类别或者概念,如一周的每一天、月份、颜色、扑克牌、太阳系的行星、五大洲、四大洋、季节、学科、运算符,等等。它们通常看上去是这个样子:typedef enum {SPRING, SUMMER,原创 2005-04-05 09:04:00 · 2885 阅读 · 0 评论 -
[J2SE 5.0专题]注解
注解(Annotations)在我看来是J2SE 5.0中比较重大的新特性。将来的EJB 3.0规范将会全面利用该特性来简化Session Bean、 Message-Driven Bean和EntityBean的定义和实现。Java的注解或多或少也是受了.NET的影响。这不是说Java本来没有注解,以前的诸如JavaDoc的标注,尤其@deprecated,都是注解,只不过这一次的更新将注解推到原创 2005-04-05 09:02:00 · 3183 阅读 · 1 评论 -
JDK1.5中新的语言特征
本文中,我们将讨论几个在JDK1.5中新的语言特征,包括:泛型(Generics)--为集合(collections)提供编译时类型安全,无需每刻从Collections取得一个对象就进行强制转换(cast) 增强的“for”循环(Enhanced For loop)--减少迭代器(iterator)的潜在错误(error-proneness) 自动置入/自动取出(Autob原创 2005-02-21 15:29:00 · 1849 阅读 · 0 评论 -
逐渐挖掘Autoboxing/Auto-Unboxing
J2SE 1.5提供了“Autoboxing”和“Auto-Unboxing”的机制,可以让编译器来自动完成在基本类型和它们的包裹对象之间的转化工作,从而能够用一种更简单的方式,来避免同时存在两套类型系统所带来的一些麻烦。本文介绍Autoboxing/Auto-Unboxing机制的使用方法、实质、发生时机、局限、对重载机制的影响以及对性能的妨碍等问题。传统上,在Java程序中,可以往一个容器类(原创 2005-04-15 11:04:00 · 2771 阅读 · 0 评论