zoukankan      html  css  js  c++  java
  • jdk1.5 新特性

    JDK1.5新特性  

    1.静态导入(import static

    import语句可以导入一个类或是某个包中的所有类。

    import static 语句可以导入一个类中的某个静态方法或是所有静态方法。

    例如:

    Math类提供了很多于数学运算的静态方法,通常情况下我们是以Math.abs();这样的方式来进行调用函数的。但是我们可不可以只写出adb();

    JDK1.5之后,可以使用import static 语句导入一个类中的某个静态方法或是所有静态方法。这是JDK1.5的新特性之一。

    例如:

    import static java.lang.Math.abs;就可以直接写一个abs();函数。

    import static java.lang.Math.*; 就可以直接调用Math类中的所有静态方法。

    2.泛型(Generic

    JDK1.5之前,在Java集合容器中(如:List)可以讲任何类型的对象加入到其中,此时被加入的对象被视为Object来看待。当从集合容器取出对象时,需要程序员自行保证对象类型的强制转换。如下:

    JDK1.5新特性 - CH - 已经开始…

    这段代码中很显然List对象中的类型不匹配,但在JDK1.5之前会编译通过,运行时才会报错,这样在开发过程中很不好。所以JDK1.5引入了泛型(Generic)的概念。在看下面的代码:

    JDK1.5新特性 - CH - 已经开始…

        泛型的引入在很大程度上避免了程序员自行保证集合容器中存取数据的强制转换。

    3.For-Each循环(增强型for循环)

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

    JDK1.5新特性 - CH - 已经开始…

    4.自动装包/拆包(Autoboxing/unboxing

    自动装包/拆包大大方便了基本类型数据和它们包装类地使用。
      自动装包:基本类型自动转为包装类.(int >> Integer)
      自动拆包:包装类自动转为基本类型.(Integer >> int)

    5.枚举(Enums

    JDK1.5加入了一个全新类型的枚举类型。为此JDK1.5引入了一个新关键字enmu. 我们可以这样来定义一个枚举类型。如下:

    JDK1.5新特性 - CH - 已经开始…

    之后,可以这样使用:

    Gender gender = Gender.male;

    也可以对枚举进行遍历,枚举类型提供了两个静态方法values()valueOf()

    JDK1.5新特性 - CH - 已经开始…

    6.可变参数(Varargs

    可变参数使程序员可以声明一个接受可变数目参数的方法(类似于多个方法重载,只不过是可变参数提供一个方法实现多个方法的重载,变得只是方法其中的参数)。

    注意:可变参数必须是函数声明中的最后一个参数。

    比如:我们编写一个简单的打印方法,以传统的方式实现方法重载:

    JDK1.5新特性 - CH - 已经开始…

    下面使用可变参数来实现这些方法的重载:

    JDK1.5新特性 - CH - 已经开始…

    调用方法:

    Write("abc",123,new ArrayList());  // 当然其中的参数可以是任意类型,任意多个

     // 这就很方便的实现了方法重载 

    输出:

    java.lang.String
         java.lang.Integer
         java.util.ArrayList

  • 相关阅读:
    计算广告学学习1
    scala学习手记20
    scala学习手记19
    scala学习手记18
    scala学习手记17
    SAM4E单片机之旅——12、USART
    SAM4E单片机之旅——11、UART之PDC收发
    SAM4E单片机之旅——10、UART与MCK之PLL
    SAM4E单片机之旅——9、UART与MCK之MAINCK
    SAM4E单片机之旅——8、UART初步
  • 原文地址:https://www.cnblogs.com/hanxf/p/4365797.html
Copyright © 2011-2022 走看看