`
outsky
  • 浏览: 5262 次
文章分类
社区版块
存档分类
最新评论

java jdk1.5 拾零

阅读更多
JDK1.5新特性介绍

作者:xBird 出处:Java研究组织 责任编辑: 方舟 [ 2004-09-11 00:05 ]
“JDK1.5”(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 。使用这些特性有助于我们编写更加清晰,精悍,安全的代码。
下面我们简单介绍一下这些新特性。

  1.泛型(Generic)

  C++通过模板技术可以指定集合的元素类型,而Java在1.5之前一直没有相对应的功能。一个集合可以放任何类型的对象,相应地从集合里面拿对象的时候我们也不得不对他们进行强制得类型转换。猛虎引入了泛型,它允许指定集合里元素的类型,这样你可以得到强类型在编译时刻进行类型检查的好处。

Collection<string></string> c = new ArrayList();
c.add(new Date());

  编译器会给出一个错误:

add(java.lang.String) in java.util.Collection<java.lang.string></java.lang.string> cannot be applied to (java.util.Date)

  2.For-Each循环

  For-Each循环得加入简化了集合的遍历。假设我们要遍历一个集合对其中的元素进行一些处理。典型的代码为:

void processAll(Collection c){
    for(Iterator i=c.iterator(); i.hasNext();){
        MyClass myObject = (MyClass)i.next();
        myObject.process();
    }
}

  使用For-Each循环,我们可以把代码改写成:

void processAll(Collection<myclass></myclass> c){
    for (MyClass  myObject :c)
        myObject.process();
}

  这段代码要比上面清晰许多,并且避免了强制类型转换。
3.自动装包/拆包(Autoboxing/unboxing)

  自动装包/拆包大大方便了基本类型数据和它们包装类地使用。

  自动装包:基本类型自动转为包装类.(int >> Integer)

  自动拆包:包装类自动转为基本类型.(Integer >> int)

  在JDK1.5之前,我们总是对集合不能存放基本类型而耿耿于怀,现在自动转换机制解决了我们的问题。

int a = 3;
Collection c = new ArrayList();
c.add(a);//自动转换成Integer.

Integer b = new Integer(2);
c.add(b + 2);

  这里Integer先自动转换为int进行加法运算,然后int再次转换为Integer.

  4.枚举(Enums)

  JDK1.5加入了一个全新类型的“类”-枚举类型。为此JDK1.5引入了一个新关键字enmu. 我们可以这样来定义一个枚举类型。
 
public enum Color
{
   Red,
   White,
   Blue
}

  然后可以这样来使用Color myColor = Color.Red.

  枚举类型还提供了两个有用的静态方法values()和valueOf(). 我们可以很方便地使用它们,例如

for (Color c : Color.values())
            System.out.println(c);

  5.可变参数(Varargs)

  可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是函数声明中的最后一个参数。假设我们要写一个简单的方法打印一些对象,

util.write(obj1);
util.write(obj1,obj2);
util.write(obj1,obj2,obj3);

  在JDK1.5之前,我们可以用重载来实现,但是这样就需要写很多的重载函数,显得不是很有效。如果使用可变参数的话我们只需要一个函数就行了

public void write(Object... objs) {
   for (Object obj: objs)
      System.out.println(obj);
}

  在引入可变参数以后,Java的反射包也更加方便使用了。对于c.getMethod("test", new Object[0]).invoke(c.newInstance(), new Object[0])),现在我们可以这样写了c.getMethod("test").invoke(c.newInstance()),这样的代码比原来清楚了很多。 

  6.静态导入(Static Imports)

  要使用用静态成员(方法和变量)我们必须给出提供这个方法的类。使用静态导入可以使被导入类的所有静态变量和静态方法在当前类直接可见,使用这些静态成员无需再给出他们的类名。

import static java.lang.Math.*;
…….
r = sin(PI * 2); //无需再写r = Math.sin(Math.PI);

  不过,过度使用这个特性也会一定程度上降低代码地可读性。
分享到:
评论
4 楼 daoger 2006-12-08  
outsky 写道
搜集一些jdk1.5的新特性,以备不时之需,这些内容均转自他人,转载信息以注明,没有信息的就对不住了!

晕!
3 楼 lighter 2006-12-08  
outsky 写道
搜集一些jdk1.5的新特性,以备不时之需,这些内容均转自他人,转载信息以注明,没有信息的就对不住了!

弱弱提一句,转载的一般尽可能放在自己的博客吧...
2 楼 outsky 2006-12-08  
数据的输入Scanner
  
  Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.
  
  Scanner reader=new Scanner(System.in);
  
  然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:
  
  next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()
  
  上述方法执行时都会造成堵塞,等待用户在命令行输入数据回车确认.例如,拥护在键盘输入12.34,hasNextFloat()的值是true,而hasNextInt()的值是false. NextLine()等待用户输入一个文本行并且回车,该方法得到一个String类型的数据
  
  import java.util;
  public class Example
  {
  public static void main(String args[])
  {
  System.out.println(“请输入若干个数,每输入一个数用回车确认”);
  
  Sytem.out.println(“最后输入一个非数字结束输入操作”);
  
  Scanner reader=new Scanner(System.in);
  double sum=0;
  int m=0;
  while(reader.hasNextDouble())
  {
  double x=reader.nextDouble();
  m=m+1;
  sum=sum+x;
  }
  System.out.print(“%d个数的和为%f\n”,m,sum);
  
  System.out.print(“%d个数的平均值是%f\n”,m,sum/m);
  }
  }
1 楼 outsky 2006-12-08  
搜集一些jdk1.5的新特性,以备不时之需,这些内容均转自他人,转载信息以注明,没有信息的就对不住了!

相关推荐

    Java-jdk1.5安装包

    JDK1.5,也称为Java 5.0,是一个重要的版本,它引入了许多新的特性和改进,对Java语言的发展产生了深远影响。 一、泛型(Generics) 在Java 5.0中,最重要的特性之一就是泛型的引入。泛型允许开发者在定义类、接口...

    jdk1.5 windows版本 64位

    描述:“jdk1.5 windows版本 64位,Java开发依赖环境” 标签:“windows” 在这个主题中,我们聚焦的是Oracle JDK 1.5(也被称为Java Development Kit,简称JDK)在Windows操作系统的64位版本。JDK是开发和运行...

    jdk1.5x64位 windows版.zip

    JDK1.5是Java的一个重要版本,它在2004年9月30日正式发布,也被称为Java 5.0。这个版本引入了大量的新特性,对Java平台进行了重大改进,提升了开发效率和性能。 首先,JDK1.5引入了类型安全的枚举(enum),这是对...

    linux系统jdk1.5下载

    Linux系统中的JDK1.5是Java开发工具包的一个早期版本,主要针对Java语言的编译、运行和调试提供支持。这个版本在今天已经相对较为罕见,因为Java已经有了多个后续版本,包括JDK7、JDK8、JDK9直至最新的JDK17等。然而...

    java jdk 1.5 windows

    Java JDK 1.5,也被称为Java 5.0,是Java开发工具包的一个重要版本,由Sun Microsystems在2004年推出。这个版本带来了许多显著的改进和新特性,对Java编程语言产生了深远的影响。以下是关于Java JDK 1.5的一些关键...

    java jdk1.5

    Java JDK 1.5,全称为Java Development Kit 1.5,是Oracle公司(原Sun Microsystems)发布的Java编程语言的一个重要版本。这个版本在2004年发布,引入了许多新特性和改进,极大地提升了Java的开发效率和性能。下面...

    javajdk1.5安装与配置环境变量(最新).txt

    JDK 1.5(也称为Java SE 5.0)是Sun Microsystems公司于2004年发布的版本,该版本引入了许多重要的改进和特性,如泛型、枚举类型、可变参数方法等。 #### 二、JDK 1.5 的安装步骤 1. **下载JDK 1.5**: - 访问...

    java jdk1.5 z chm 中文版

    Java JDK 1.5,全称为Java Development Kit 1.5,是Java编程语言的一个重要版本,由Sun Microsystems(后被Oracle公司收购)在2004年发布。这个版本引入了许多新特性,大大增强了Java语言的功能和效率,对开发者来说...

    java-JDK1.5

    Java JDK1.5,全称为Java Development Kit 1.5,是Oracle公司(原Sun Microsystems)发布的Java平台标准版开发工具包,对于Java开发者来说,它的重要性不言而喻。这个版本发布于2004年,是Java SE 5.0的代号,它在...

    JDK1.5最终版全平台下载

    JDK1.5 全平台安装包下载 百度网盘资源 jdk-1_5_0_22-linux-amd64-rpm.bin jdk-1_5_0_22-linux-amd64.bin jdk-1_5_0_22-linux-i586-rpm.bin jdk-1_5_0_22-linux-i586.bin jdk-1_5_0_22-solaris-amd64...

    IBM_jdk1.5_Guide.zip_IBM jdk 1.5_aix_ibm java1.5_ibm jdk1.5 wind

    IBM JDK 1.5,全称为IBM Java Development Kit 1.5,是IBM公司为AIX操作...通过深入阅读IBM_jdk1.5_Guide.pdf,开发者可以掌握如何在AIX系统上部署和运行Java应用,同时利用IBM JDK 1.5的优势来提升应用性能和稳定性。

    JDK1.5的32位和64位安装包

    JDK1.5,全称Java Development Kit 1.5,是Java编程语言的一个重要版本,由Oracle公司发布。这个版本在Java的历史上具有里程碑意义,因为它引入了许多新特性和改进,大大提升了开发效率和代码质量。在本文中,我们将...

    简单易用通用(xls,xlsx)导入导出操作 jdk1.5+

    前几天上传过这个资源,因为是在jdk1.6上开发的, 测试了一下在jdk1.5上不能用, 今天重新用jdk1.5编译了一下, 这个是可以支持jdk1.5+的 将 pu-xlscommon-1.0.0.jar 添加到工程的 /lib 目录下 用法在附件中 XlsTest....

    jdk1.5免安装版

    绝版jdk1.5,非常不错的资源。用起来很好。是 Java语言对Bean类属性、事件的一种缺省处理方法。例如类A中有属性name,那我们可以通过getName,setName来得到其值或者设置新 的值。通过getName/setName来访问name属性,...

    JAVA JDK1.5

    JAVA JDK1.5

    JDK1.5,JDK1.5

    JDK1.5,全称Java Development Kit 1.5,是Java平台标准版(Java SE)的一个重要版本,由Sun Microsystems在2004年9月30日正式发布。这个版本引入了大量的新特性,对Java编程语言进行了重大改进,极大地提升了开发...

    包含 jdk1.5免安装、jdk1.6免安装、jdk1.8(32和64)

    **JDK 1.5(也称为Java 5.0)** JDK 1.5在2004年发布,引入了许多重要的新特性,如: 1. **Generics(泛型)**:泛型允许在定义类、接口和方法时指定类型参数,提高了代码的类型安全性和重用性。 2. **Autoboxing/...

    jdk1.5.exe jdk1.5

    jdk1.5.exe jdk1.5 jdk1.5下载

    java JDK1.5,1.6版本,和安装

    JDK1.5和JDK1.6是Java历史上的两个关键版本,分别发布于2004年和2006年,它们对Java语言的发展起到了重要作用。 JDK1.5,也被称为Java SE 5.0,引入了许多重要的新特性,包括: 1. **泛型**:泛型允许在定义类、...

    java jdk 1.5 API html

    Java JDK 1.5,也被称为Java 5.0,是Java开发工具包的一个重要版本,于2004年发布。这个版本引入了大量的新特性,优化和改进,极大地提升了Java编程的效率和灵活性。本API HTML文档是开发者学习和查阅Java 1.5 API的...

Global site tag (gtag.js) - Google Analytics