`
lzh166
  • 浏览: 294044 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java 1.5和1.6中新特性(转)

阅读更多

JDK5新特性(与1.4相比)【转】

1 循环

for (type variable : array){ body}

for (type variable : arrayList){body}

而1.4必须是:

for (int i = 0; i < array.length; i++){ type variable = array[i];    body}

for (int i = 0; i < arrayList.size(); i++){type variable = (type) arrayList.get(i); body}

2 泛型

以ArrayList为例,包括创建一个容器对象和取得容器内对象操作:

1.5 ArrayList<Type> arrayList =new ArrayList<Type>(); arrayList.get(i)

1.4 ArrayList arrayList =new ArrayList();  (Type) arrayList.get(i)

3 自动装箱拆箱

在JDK5.0以前,在原始类型与相应的包装类之间的转化是不能自动完成的。要完成这种转化,需要手动调用包装类的构造函数,在JDK5.0环境中,可以自动转化:

1.5 Integer wrapper = n;    int n = wrapper;

1.4 Integer wrapper = new Integer(n);    int n = wrapper.intValue();

4 可变的返回类型

在JDK5.0以前,当覆盖父类方法时,返回类型是不能改变的。现在有新的规则用于覆盖方法。如下,一个典型的例子就是clone()方法:

1.5 public Employee clone() { ... }

    ...

    Employee cloned = e.clone();

1.4 public Object clone() { ... }

    ...

    Employee cloned = (Employee) e.clone();

5 静态导入

静态导入功能对于JDK 5.0以前的版本是不支持的。

import static java.lang.Math;

import static java.lang.System;

...

1.5 out.println(sqrt(PI));

1.4 System.out.println(Math.sqrt(Math.PI));

6 控制台输入

JDK 5.0先前的版本没有Scanner类,只能使用JOptionPane.showInputDialog类代替。

1.5 Scanner in = new Scanner(System.in);

    System.out.print(prompt);

    int n = in.nextInt();

    double x = in.nextDouble();

    String s = in.nextLine();

1.4 String input = JOptionPane.showInputDialog(prompt);

    int n = Integer.parseInt(input);

    double x = Double.parseDouble(input);

    s = input;

7 格式化输出

JDK5.0以前的版本没有printf方法,只能使用NumberFormat.getNumberInstance来代替。

1.5 System.out.printf("%8.2f", x);

1.4 NumberFormat formatter= NumberFormat.getNumberInstance();

    String formatted = formatter.format(x);

    for (int i = formatted.length(); i < 8; i++)

    System.out.print(" "); System.out.print(formatted);

8 内容面板代理

在JDK5.0先前的版本中,JFrame,JDialog,JApplet等类没有代理add和setLayout方法。

1.5 add(component);  setLayout(manager);

1.4 getContentPane().add(component);getContentPane().setLayout(manager);

9 StringBuilder类

jDK 5.0引入了StringBuilder类,这个类的方法不具有同步,这使得该类比StringBuffer类更高效。

 

JDK6的新特性(转)

1 SystemTray类

在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray,前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定的邮箱发邮件,用默认应用程序打开或编辑文件(比如,用记事本打开以txt为后缀名的文件),用系统默认的打印机打印文档;后者可以用来在系统托盘区创建一个托盘程序.

2 使用JAXB2来实现对象与XML之间的映射

JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式,反之亦然。

3 新增StAX

StAX(The Streaming API for XML)是JDK6.0中除了DOM和SAX之外的又一种处理XML文档的API

4 新增Compiler API

可以用JDK6 的Compiler API去动态编译Java源文件。这个特性对于用到动态编译的应用程序相当有用, 比如JSP Web Server,当我们手动修改JSP后,是不希望需要重启Web Server才可以看到效果的,这时候我们就可以用Compiler API来实现动态编译JSP文件

5 轻量级Http Server

JDK6提供了一个简单的Http Server API,,程序员必须自己实现HttpHandler接口,HttpServer会调用HttpHandler实现类的回调方法来处理客户端请求。

6 插入式注解处理API(Pluggable Annotation Processing API)

插入式注解处理API提供一套标准API来处理Annotations,它把method, package, constructor, type, variable, enum, annotation等Java语言元素映射为Types和Elements, 从而将Java语言的语义映射成为对象。

7 用Console开发控制台程序

JDK6中提供了java.io.Console类专用来访问基于字符的控制台设备.

8 Web服务元数据(Web Services metadata)

9 更简单,更强大的JAX-WS

Java Architecture for XML Web Services的缩写,是一种用Java和XML开发Web Services应用程序的框架。

10 脚本语言支持(Scripting)

JDK6增加了对脚本语言的支持,原理上是将脚本语言编译成bytecode,这样脚本语言也能享用Java平台的诸多优势,包括可移植性,安全等,另外,由于现在是编译成bytecode后再执行,所以比原来边解释边执行效率要高很多。

11 JTable的排序和过滤

原来的JTable基本上是只能显示数据,在JDK6新增了对JTable的排序和过滤功能


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yakihappy/archive/2009/03/11/3979981.aspx

分享到:
评论

相关推荐

    JDK1.5中新的语言特征分类介绍

    本资源为JDK1.5中新的语言特征分类介绍

    Java右下角弹出广告框

    使用到了JDK1.6中新特性的透明窗体,所以必须要使用JDK1.6或以上版本的 功能如下: 1.窗体出现时逐渐清晰 2.停留一会儿时间之后会自动逐渐模糊直至消失 3.点击关闭按钮后逐渐模糊直至消失 4.提示内容支持html...

    JAVA 2平台安全技术-结构,API设计和实现

    本书首先概述了计算机和网络安全概念并解释了Java安全模型,并在此基础上,详细描述了Java 2平台中新增加的许多安全结构方面的措施,同时对Java安全性的实施提出了使用指导,描绘了如何定制、扩展和精化安全结构以及...

    swift-展示Swift4.2中新特性示例的Xcodeplayground

    展示Swift 4.2中新特性示例的Xcode playground

    QQ音乐2021在IE9中新特性有哪些.docx

    QQ音乐2021在IE9中新特性有哪些.docx

    JDK5.0新特性 常量 、枚举、 for each、反射

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    Java8中新特性Optional、接口中默认方法和静态方法详解

    Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的...下面这篇文章主要给大家介绍了关于Java8中新特性Optional、接口中默认方法和静态方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。

    Java虚拟机规范 (Java SE 7 中文版)

    同时,基于最新Java SE 7平台,它详细介绍了Java SE 7中新加入的lnvokeDynamic指令和方法句柄机制,给出了在Java SE 6期间引入的类型检查检验器的原理证明。本书还介绍了Java SE 5中对class文件格式的扩展变动,例如...

    JDK新特性.rar

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    JDK5.0新特性 反射、枚举.rar

    jdk1.5以上版本中新增加的特性描述,带有代码例子让你很清晰的明白jdk的 常量 、枚举、 for each、反射等各种新的特性,相信需要的你,一定满足。

    JDK1.5 注解

    详细讲解 JDK1.5中新功能 注解 的使用。附代码

    Java2类库(PDF)

    本书由Java技术的创建者编写,对Java 2平台标准版v1.2中新增加的包及类进行了全面、系统的描述,主要包括包概述和类描述。包概述是对每个包及其所有类的简要概括;而每个类描述独立成节,从类层次结构示意图、类示例...

    Java Web整合开发完全自学手册:Struts+Hibernate+Spring+Eclipse源码

    由于使用范围广也使它们的版本更替非常之快,尤其是Java5推出以后这些项目都采用了Java5中的特性来重新实现并增加了很多新特性。以国内使用最广泛的Struts为例,其新版本Struts2与前一版Struts1.x已经有了天壤之别。...

    java2平台安全技术结构API设计和实现

    本书首先概述了计算机和网络安全概念并解释了Java安全模型,并在此基础上,详细描述了Java 2平台中新增加的许多安全结构方面的措施,同时对Java安全性的实施提出了使用指导,描绘了如何定制、扩展和精化安全结构以及...

    Java2类库参考手册

    Java2类库参考手册.....Java是Sun公司推出的新型面向对象程序设计语言。它将面向对象、平台无关... 本书由Java技术的创建者编写,对Java 2平台标准版,V1.2中新增加的包及类进行了描述。本书主要由包概述和类描述构成。

    Java_2平台安全技术-结构,API设计和实现

    本书首先概述了计算机和网络安全概念并解释了Java安全模型,并在此基础上,详细描述了Java 2平台中新增加的许多安全结构方面的措施,同时对Java安全性的实施提出了使用指导,描绘了如何定制、扩展和精化安全结构以及...

    JAVA面试题汇总(在原来JAVA题库中新加了Hibernate及Spring 方面的知识)

    JAVA面试题汇总;自己新加了一些面试题及答案了(主要包括:原来的JAVA面试题汇总,Hibernate十五道强攻题;还有用简单代码学习Spring:IoC、AOP。。。等等);祝大家顺利通过面试吧;机会只留给有准备的人。

    flex java环境中需要在tomcat的webapp中新加的war文件

    flex java环境中用BlazeDS,需要在tomcat的webapp中新加的war文件

Global site tag (gtag.js) - Google Analytics