A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lichao 中级黑马   /  2013-12-21 18:36  /  1104 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

帮忙看看JDK1.5新特性,还缺啥呀?帮忙添添改改。
我知道的有:自动拆箱装箱,泛型,高级for,枚举,静态导入,线程中的锁Lock,可变参数。

评分

参与人数 1黑马币 +9 收起 理由
FFF + 9 够了,就是那么多。

查看全部评分

2 个回复

倒序浏览
JDK1.5新特性:

1.自动装箱与拆箱:

Integer iObj = 3;

System.out.println(iObj + 12);
Integer i1 = 137(-128--127范围时,为true);
Integer i2 = 137(-128--127范围时,为true);

System.out.println(i1 == i2); //false,但是括号中时却返回ture,原因是Integer采用的是享元模式

Integer i3 = Integer.valueOf(213);
Integer i4 = Integer.valueOf(213);
System.out.println(i3==i4);//同上,另一种包装形式


2.枚举(常用来设计单例模式)

public class EnumTest {

/**
* @param args
*/
public static void main(String[] args) {
WeekDay1 weekDay = WeekDay1.MON;
System.out.println(weekDay.nextDay());
WeekDay weekDay2 = WeekDay.FRI;
System.out.println(weekDay2);
System.out.println(weekDay2.name());
System.out.println(weekDay2.ordinal());
System.out.println(WeekDay.valueOf("SUN").toString());
System.out.println(WeekDay.values().length);
new Date(300){};
}

public enum WeekDay{

SUN(1),MON(),TUE,WED,THI,FRI,SAT;
private WeekDay(){System.out.println("first");}
private WeekDay(int day){System.out.println("second");}
}

public enum TrafficLamp{
RED(30){
public TrafficLamp nextLamp(){
return GREEN;
}
},
GREEN(45){
public TrafficLamp nextLamp(){
return YELLOW;
}
},
YELLOW(5){
public TrafficLamp nextLamp(){
return RED;
}
};
public abstract TrafficLamp nextLamp();
private int time;
private TrafficLamp(int time){this.time = time;}
}
}

3.静态导入

import static java.lang.Math.*;

public class StaticImport {
public static void main(String[] args){
int x = 1;
try {
x++;
} finally {
System.out.println("template");
}
System.out.println(x);


System.out.println(max(3, 6));
System.out.println(abs(3 - 6));

}
}
4.可变参数

public class VarableParameter {

/**
* @param args
*/
public static void main(String[] args) {

System.out.println(add(2,3));
System.out.println(add(2,3,5));
}


public static int add(int x,int... args){
int sum = x;
/* for(int i=0;i<args.length;i++){
sum += args[i];
}*/

for(int arg : args){
sum += arg;
}
return sum;
}

}
5.内省

ReflectPoint pt1 = new ReflectPoint(3,5);

BeanInfo beanInfo = Introspector.getBeanInfo(pt1.getClass());
PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
Object retVal = null;
for(PropertyDescriptor pd : pds){
Method methodGetX = pd.getReadMethod();
retVal = methodGetX.invoke(pt1);

}

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
好的谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马