JavaµÄµ¥ÀýģʽÀý×Ó
1. ÏÈдһ¸öSingletonµÄclass
package stone;
public class Singleton {
private static Singleton instance;
private Singleton() {}
public static Singleton getInstance(){
if(instance==null)
instance= new Singleton();
return instance;
}
}
2. ÔÙдһ¸öTestSingletonµÄclass
package stone;
public class TestSingleton {
public static void main(String[] args) {
Singleton s1=Singleton.getInstance();
Singleton s2=Singleton.getInstance();
if(s1==s2)
System.out.println("s1=s2");
else
System.out.println("s1<>s2");
}
}
3. ÔËÐÐTestSingleton, ½á¹ûÈçÏÂ:
s1=s2
4. ²âÊÔµ¥Àýģʽ³É¹¦.
Ïà¹ØÎĵµ£º
1.2 ¹¤³§·½·¨£¨Factory Method£©Ä£Ê½
¹¤³§·½·¨Ä£Ê½ÊÇÀàµÄ´´½¨Ä£Ê½£¬ÓÖ½ÐÐéÄâ¹¹Ôì×Ó£¨Virtual Constructor£©Ä£Ê½»òÕß¶à̬ÐÔ¹¤³§£¨Polymorphic Factory£©Ä£Ê½¡£
¹¤³§·½·¨Ä£Ê½µÄÓÃÒâÊǶ¨ÒåÒ»¸ö´´½¨²úÆ·¶ÔÏóµÄ¹¤³§½Ó¿Ú£¬½«Êµ¼Ê¹¤×÷ÍÆ³Ùµ½×ÓÀàÖС£
1.2.1 ¹¤ ......
1.Èç¹ûÔÚÏÂÃæµÄ´úÂëÖУ¬tryLock¸Ä³Élock£¬ÄÇô»áÒ»Ö±µÈ´ý£¬Ö±µ½Äܹ»ËøÉÏÎļþΪֹ£¬µ«tryLock»áÁ¢¼´·µ»Ø¡£
Èç¹ûÒ»¸öµ÷ÓÃÁËtryLock£¬»òlock²¢Çҳɹ¦ËøÉÏÖ¸¶¨ÎļþºóµÄ³ÌÐò£¬ÔÚûÓÐÊÍ·ÅÎļþËøµÄÇé¿öÏ£¨Ã»Óе÷ÓÃrelease£©³ÌÐò¾Í½áÊø£¨°üº¬Ç¿ÖƽáÊøµÄÇé¿ö£©£¬ÄÇôÎļþËø»á×Ô¶¯±»ÊÍ·Å¡£
2.´úÂëÖеÄsleepÊÇΪÁ˱ãÓÚÑéÖ¤³ÌÐòÓõġ ......
1. ÔÚJ2SE5.0ÖÐÒª¶¨Òåö¾ÙÀàÐÍÊÇʹÓÃenum¹Ø¼ü´Ê£¬Ã¶¾ÙÀàÐÍÖ÷ÒªÌṩһЩ³£Êý¡£ÈçÏÂÁдúÂ붨ÒåÁËActionö¾ÙÀàÐÍ£º
1. ÔÚJ2SE5.0ÖÐÒª¶¨Òåö¾ÙÀàÐÍÊÇʹÓÃenum¹Ø¼ü´Ê£¬Ã¶¾ÙÀàÐÍÖ÷ÒªÌṩһЩ³£Êý¡£ÈçÏÂÁдúÂ붨ÒåÁËActionö¾ÙÀàÐÍ£º
Java´úÂë
public enum Action
{
TURN_LEFT,
TURN_RIGHT,
......
×îÇ¿ÁÒÍÆ¼ö£ÎÒµÄjavaÊղؼУ¨ÄÚÓйúÄÚ×îºÃµÄjavaÂÛ̳£©
www.chinajavaworld.com -ÂÛ̳È˺ܶ࣬¸ßÊÖÒ²¶à£¬²»¹ýºÃÏñ¶¼ÔÚDZˮ
www.cn-java.com -Ò²ºÜ²»´í£¬ÎÄÕºܺ㬵«ÊǾÍÊÇÉÌÒµÐÔŨÁ˵㡣
www.chinaitlab.com-·Ç³£ÓÐϵͳÐÔ£¬¶øÇÒÍÆ³öµÄjavaÔ¶³Ì½ÌÓýÊÇÖйú×îÈ«ÃæµÄscjpÔ¶³Ì½ÌÓý¡£ www.huihoo. ......
Èí¼þ¿ª·¢Ö®Â·ÊdzäÂú¾£¼¬ÓëÌôս֮·,Ò²ÊdzäÂúÏ£Íû֮·¡£JavaѧϰҲÊÇÈç´Ë£¬Ã»Óнݾ¶¿É×ß¡£ÃÎÏëÏñ¡¶ÌìÁú°Ë²¿¡·ÖÐÐéÖñÒ»Ñù±»ÎÞÑÂ×Óõ®õ¹à¶¥¶øÇáËÉ»ñµÃÒ»¼××Ó¹¦Á¦£¬ÊǺܲ»ÏÖʵµÄ¡£Ã¿ÌìÑöÌì´ó½Ð"ÌìÉñ°¡£¬Çë´Í¸øÎÒÒ»±¾¿û»¨±¦µä°É"£¬Êâ²»Öª¼´Ê¹Äã»ñµÃÁË¿û»¨±¦µä£¬³ýÁËÊÜ×Ô¹¬ÆäÉíÖ®¿àÍ⣬ÄãÒ²²»Ò»¶¨³ÉµÃÁË"¶«·½²»°Ü"£¬µ¹ÊdzÉ"Î÷·½Ê§ ......