黑马程序员 java高新技术笔记之装箱与拆箱,枚举

来源:互联网 发布:亲和素淘宝店 编辑:程序博客网 时间:2024/05/17 04:11

---------------------------------------------------------------- android培训、java培训、期待与您交流! ----------------------------------------------------------------------------------------

一自动装箱与拆箱

java 1.5版本新特性,将基本数据类型包装为响应的类。如:Integer i=3; 则把int 型数据3封装为Integer 对象,这就是自动装箱。

自动拆箱: 将基本数据类型对应的对象变成基本数据类型再与基本数据运算,如: int x=i+2;  则先把i拆成基本类型,再与2相加。

 

二,枚举

(1)即类中封装了几个固定的对象。
(2)枚举中的构造方法必须是私有的,只能在枚举内部创建对象;
(3)带抽象方法的枚举,在枚举内写对象时,用内部类的方式创建,并且还可以传参数;
(4)当用到单例模式时,可以用枚举。

枚举使用举例:

public class EnumTest {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubWeekDay weekday=WeekDay.MON;//System.out.println(weekday.ordinal());//System.out.println(weekday.name());//System.out.println(WeekDay.valueOf("SUN"));//System.out.println(WeekDay.values().length);}//普通枚举,枚举中的构造方法必须是私有的,不让外部创造对象public enum WeekDay{SUN(1),MON,TUS,WED,THU,FRI,STA;private WeekDay(){System.out.println("first");}private WeekDay(int x){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;}}}


 ---------------------------------------------------------------- android培训、java培训、期待与您交流! ----------------------------------------------------------------------------------------