jdk1.5新特性

来源:互联网 发布:考勤机采集数据超时 编辑:程序博客网 时间:2024/05/16 08:59
现在jdk版本已经发展到了jdk7.0,但是从质的飞跃源自jdk1.5,在实际开发过程中,jdk1.5的新特性应用的还是比较频繁,在实际项目开发过程中新特性的灵活运用带来了很多便利,下面就把常见jdk1.5新特性做如下介绍;

        1 静态导入:

               语法: import static  包名.类名.静态方法名(静态属性)   或者 import static  包名.类名.*;

                含义:   导入某个包下面某个类的静态方法或者所有静态方法;

               举例:  import static java.lang.Math.abs;  以后程序用到此方法的时候,直接用abs(5)调用,这种新特性并不是什么优秀的特性,别的程序中见到这样的代码,应该能看懂就行了,在项目中应用不广泛,因为可以直接用类名去调用静态方法;

         2 可变参数:

                 从JDK 5开始, Java允许为方法定义长度可变的参数。语法:

                 public voidfoo(intargs){

                  }

•         调用可变参数的方法时,编译器将自动创建一个数组保存传递给方法的可变参数,因此,程序员可以在方法体中以数组的形式访问可变参数
可变参数只能处于参数列表的最后,所以一个方法最多只能有一个长度可变的参数
        3 增强for循环
        
         引入增强for循环的原因:在JDK5以前的版本中,遍历数组或集合中的元素,需先获得数组的长度或集合的迭代器,比较麻烦!因此JDK5中定义了一种新的语法——增强for循环,以简化此类操作。增强for循环只能用在数组、或实现Iterator接口的集合类上
          语法格式:                                             

           for(变量类型变量 :需迭代的数组或集合){

 

            }
          

     int arr[]= newint[5];                   

     for(int num :arr){

      num = 1;

    }

    System.out.println(arr[0]);

     4 枚举

     为什么需要枚举?

一些方法在运行时,它需要的数据不能是任意的,而必须是一定范围内的值,此类问题在JDK5以前采用自定义带有枚举功能的类解决,Java5以后可以直接使用枚举予以解决。JDK 5新增的 enum关键字用于定义一个枚举类。
      枚举类具有如下特性:
      • 枚举类也是一种特殊形式的Java类。
      • 枚举类中声明的每一个枚举值代表枚举类的一个实例对象。
       •java中的普通类一样,在声明枚举类时,也可以声明属性、方法和构造函数,但枚举类的构造函数必须为私有的(这点不难理解)。
       •枚举类也可以实现接口、或继承抽象类。
       •JDK5中扩展了swith语句,它除了可以接收int, byte, char, short外,还可以接收一个枚举类型。
      •若枚举类只有一个枚举值,则可以当作单态设计模式使用。
  5 自动装箱与拆箱