---------------------- android培训、java培训、期待与您交流! ----------------------
JDK1.5的新特性 : 自动拆箱和机制 枚举
一.自动拆箱与自动装厢机制
将基本数据类型转换成Integer对象时基本数据类型在(-128——127)之间;
Integer i1=123;
Integer i2=123;
System.out.print(i1==i2);
result:true
Integer i1=133;
Integer i2=133;
result:false
小的整数在装箱的时候装成的是同一对象
大的整数在装箱的时候装成了不同的对象
二.享元模式(flyweight)
多个对象含有相同的属性将之封装成一个对象,将不同的属性变成方法的参数称之为外部状态,那些相同的
属性称之为对象的内部状态.
三 .枚举也是JDK1.5的一个新特性
枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则编译器就会报错
枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现
这一目标
实例:
public class Enum {
public static void main(String[] args) {
WeekDay wd = WeekDay.SUN;
System.out.println(wd.tostring());
}
}
class WeekDay {
private WeekDay() {
}
public static final WeekDay SUN = new WeekDay();
public static final WeekDay MON = new WeekDay();
public static final WeekDay TUS = new WeekDay();
public static final WeekDay WEN = new WeekDay();
public static final WeekDay THUR = new WeekDay();
public static final WeekDay FRI = new WeekDay();
public static final WeekDay SAT = new WeekDay();
public WeekDay nextday() {
if (this == SUN) {
return MON;
} else if (this == MON) {
return TUS;
} else if (this == TUS) {
return WEN;
}
return null;
}
public String tostring(){
return this==SUN?"SUN":"MON";
}
}
我觉得枚举在C语言中用的不较多,以前很少在java中用过,现在看了视频觉得枚举在实际应用中的确不错
说白了,他能很好的解决实际生活中的例子,比如说:我们每次去学生街的时候都要经过红绿灯,我想红绿灯
之间的变换,就可以用枚举的知识来解决。具体的细节还得在网上查资料,视频上讲的不是很详细,只是给我们带
进了枚举的概念!
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima