-----------------------
Enum |
-----------------------
# ö¾Ù,JAVAÀïÃæµÄÌØÊâ¶ÔÏó
# enum --ͨ¹ý¸Ã¹Ø¼ü×ÖÀ´´´½¨Ã¶¾ÙÀà¡££¬Ìæ»»µô class
|--JDK1.5°æ±¾ºóÐÂÔöµÄ¹Ø¼ü×Ö¡£ÓÃÓÚ¶¨Òåö¾Ùͨ¹ý¹«¹²·½·¨À´µ÷ÓÃÊôÐÔ
# ·½·¨
int ordinal();
* ·µ»Øµ±Ç°¶ÔÏóÔÚö¾ÙÀàÖеÄλÖÃ,´Ó 0 ¿ªÊ¼
String name() ;
* µ±Ç°¶ÔÏóÔÚö¾ÙÖеÄÃû³Æ
# ¾²Ì¬
> T valueOf(Class enumType, String name) ;
* »ñȡָ¶¨ Class ö¾ÙÀàÐ͵Ä,Ö¸¶¨Ãû³ÆµÄʵÀý¶ÔÏó
values();
* ·µ»ØµÄÊÇÒ»¸ö¸ÃÀàµÄÊý×鼯ºÏ£¬ÀïÃæ°üº¬Á˸ÃÀàµÄËùÓÐö¾Ù¶ÔÏó¡£
´Ë¹Ø¼ü×ÖÓÃÓÚ±íʾһ¸öÀà¡£¸ú class Ò»Ñù£¡±»Ëü±êʶµÄÀ࣬¾ÍÊÇÒ»¸öö¾ÙÀà¡£
1,±ØÐëÔÚ´ËÀàµÄµÚÒ»Ïî¾Í½¨Á¢¶ÔÏ󣬸ñʽ£º¶ÔÏó1(²ÎÊý1£¬²ÎÊý2),¶ÔÏó2(²ÎÊý1£¬²ÎÊý2),¶ÔÏó3(²ÎÊý1£¬²ÎÊý2);
ˈ̞.values();
|--·µ»ØµÄÊÇÒ»¸ö¸ÃÀàµÄÊý×鼯ºÏ£¬ÀïÃæ°üº¬Á˸ÃÀàµÄËùÓÐö¾Ù¶ÔÏó¡£
ˈ̞.valueOf(String);
|--·µ»ØµÄÊÇÖ¸¶¨Ãû³ÆµÄ¶ÔÏó.String ÓÃÀ´Ö¸¶¨¶ÔÏóµÄÃû×Ö¡£Ö»ÄÜдÒѾ´æÔÚ¶ÔÏóÃû£¬ÂÒд£¬»á±¨´í¡£
---×¢ÒâÊÂÏî
¶¨Òåö¾ÙÀàÓùؼü×Ö enum
ËùÓеÄö¾ÙÀà¶¼ÊÇ Enum µÄ×ÓÀà
ö¾ÙÀàµÄµÚÒ»ÐбØÐëÊÇö¾ÙÏ×îºóÒ»¸öö¾ÙÏîºóµÄ·ÖºÃ¿ÉÒÔÊ¡ÂÔ£¬µ«ÊÇÈç¹ûö¾ÙÀàÓÐÆäËûµÄ¶«Î÷£¬Õâ¸ö·ÖºÅ¾Í²»ÄÜÊ¡ÂÔ£¬½¨Ò鲻ҪʡÂÔ
ö¾ÙÀà¿ÉÒÔÓй¹ÔìÆ÷¡£µ«±ØÐëÊÇ private µÄ¡£ËüĬÈϵÄÒ²ÊÇ private µÄ¡£Ã¶¾ÙÏîµÄÓ÷¨±È½ÏÌØÊâ:
ö¾Ù("");
ö¾ÙÒ²¿ÉÒÔÓй¹Ôì·½·¨¡£µ«ÊÇö¾ÙÏî±ØÐëÖØÐ´¸Ã·½·¨¡£
-------
µ±Ã¶¾ÙÀàÖгöÏÖ³éÏó·½·¨µÄʱºò¡£ÐèÒªÔÚÿ¸öʵÀýÉ϶¼ÊµÏÖ³éÏó·½·¨
Àý£º
enum Test{
BLUE{
public void show(){
System.out.println("blue");
}
},
RED{
public void show(){
System.out.println("red");
}
},
YELLOW{
public void show(){
System.out.println("yellow");
}
},
PINK{
public void show(){
System.out.println("pink");
}
};
abstract void show();
}