六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 28|回复: 0

jdk1.5的新特性小解

[复制链接]

升级  88%

138

主题

138

主题

138

主题

举人

Rank: 3Rank: 3

积分
464
 楼主| 发表于 2013-2-4 22:30:17 | 显示全部楼层 |阅读模式
jdk1.5增加了泛型,for each,静态导入等新特性。

A 所谓的泛型:我觉得它的好处就是不用手动的强制类型转换,并且在编译时可以找出错误,如果有问题的话,而jdk1.5以前,必须要手动的强制类型转换,并且编译时不容易报错,而是在运行时出错误。

B for each:下面的例子使用了这个

这是没有使用前的写法

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

这是使用后的写法(包括泛型)

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

C jdk1.5生成UUID
import java.util.UUID;

public class Test {

public static void main(String[] args) {
String uuid= UUID.randomUUID().toString().replaceAll("\\-", "");
System.out.println(uuid);
}
}

 D 静态导入(Static import)

  静态导入使代码更易读。通常,你要使用定义在另一个类中的常量(constants),像这样:

  importorg.yyy.pkg.Increment;

  class Employee {

  public Double calculateSalary(Double salary{

  return salary + Increment.INCREMENT * salary;

  }

E自动注入,自动转换

public static void main(String args[]) {

  int n=10;

  Integer age= new Integer(30);

  Integer ageAfterTenYear= age +10;

  }


  }

 F 当时使用静态导入,我们无需为常量名前缀类名就能使用这些常量,像这样:

  import static org.yyy.pkg.Increment;

  class Employee {

  public Double calculateSalary(Double salary{

  return salary + INCREMENT * salary;

  }

  }
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表