JavaÖг£ÓÃÉè¼ÆÄ£Ê½×ܽá
ÔÚJavaÖÐÓÐ23ÖÐÉè¼ÆÄ£Ê½£¬ÏÂÃæÖ»¶Ô²¿·Ö³£ÓõÄÉè¼ÆÄ£Ê½½éÉÜһϣº
1.µ¥Àýģʽ£¨ÓеÄÊéÉÏ˵½Ðµ¥Ì¬Ä£Ê½Æäʵ¶¼Ò»Ñù£©
¸ÃģʽÖ÷ҪĿµÄÊÇʹÄÚ´æÖб£³Ö1¸ö¶ÔÏ󡣿´ÏÂÃæµÄÀý×Ó£º
package org.sp.singleton;
//·½·¨Ò»
public class Singleton {
//½«×ÔÉíµÄʵÀý¶ÔÏóÉèÖÃΪһ¸öÊôÐÔ,²¢¼ÓÉÏStaticºÍfinalÐÞÊηû
private static final Singleton instance = new Singleton();
//½«¹¹Ôì·½·¨ÉèÖóÉ˽ÓÐÐÎʽ
private Singleton() {
}
//ͨ¹ýÒ»¸ö¾²Ì¬·½·¨ÏòÍâ½çÌṩÕâ¸öÀàµÄʵÀý
public static Singleton getInstance() {
return instance;
}
}
//·½·¨¶þ
class Singleton2 {
private static Singleton2 instance2 = null;
public static synchronized Singleton2 getInstance() {
if (instance2 == null)
instance2 = new Singleton2();
return instance2;
}
}
×¢£ºÕâ¶þ¸ö·½·¨ÊµÏÖÁËÒ»ÑùµÄ¹¦ÄÜ£¬µ«¸öÈËÍÆ¼ö²ÉÓõÚÒ»ÖÖ·½·¨¡£
2.¹¤³§Ä£Ê½
¸ÃģʽÖ÷Òª¹¦ÄÜÊÇͳһÌṩʵÀý¶ÔÏóµÄÒýÓ᣿´ÏÂÃæµÄÀý×Ó£º
public class Factory{
public ClassesDao getClassesDao(){
ClassesDao cd = new ClassesDaoImpl();
return cd;
}
}
interface ClassesDao{
public String getClassesName();
}
class ClassesDaoImpl implements ClassesDao {
public String getClassesName(){
System.out.println("A°à");
}
}
class test
{
public static void main(String[] args){
Factory f = new Factory();
f.getClassesDao().getClassesName();
}
}
Õâ¸öÊÇ×î¼òµ¥µÄÀý×ÓÁË£¬¾ÍÊÇͨ¹ý¹¤³§·½·¨Í¨¹ý½Ó¿Ú»ñÈ¡¶ÔÏóµÄÒýÓÃ
3.½¨Ôìģʽ
¸ÃģʽÆäʵ¾ÍÊÇ˵£¬Ò»¸ö¶ÔÏóµÄ×é³É¿ÉÄÜÓкܶàÆäËûµÄ¶ÔÏóÒ»Æð×é³ÉµÄ£¬±ÈÈç˵£¬Ò»¸ö¶ÔÏóµÄʵÏַdz£¸´ÔÓ£¬ÓкܶàµÄÊôÐÔ£¬¶øÕâЩÊôÐÔÓÖÊÇÆäËû¶ÔÏóµÄÒýÓ㬿ÉÄÜÕâЩ¶ÔÏóµÄÒýÓÃÓÖ°üÀ¨ºÜ¶àµÄ¶ÔÏóÒýÓ᣷â×°ÕâЩ¸´ÔÓÐÔ£¬¾Í¿ÉÒÔʹÓý¨Ôìģʽ¡£
¾ßÌå¿´¿´ÏÂÃæµÄÀý×Ó£º
4.ÃÅÃæÄ£Ê½
Õâ¸öģʽ¸öÈ˸оõÏñÊÇService²ãµÄÒ»¸ö·°æ¡£±ÈÈçDaoÎÒÃǶ¨ÒåÁ˺ܶà³Ö¾Ã»¯·½·¨£¬ÎÒÃÇͨ¹ýService²ã½«DaoµÄÔ×Ó·½·¨×é³ÉÒµÎñÂß¼£¬ÔÙͨ¹ý·½·¨ÏòÉϲãÌṩ·þÎñ¡£ÃÅÃæÄ£Ê½µÀÀíÆäʵÊÇÒ»ÑùµÄ¡£
¾ßÌå¿´¿´Õâ¸öÀý×Ó£º
interface ClassesDao{
public String getClassesName();
}
class ClassesDaoImpl implements ClassesD
Ïà¹ØÎĵµ£º
ÏÂÊöÊ®Ëĸö¼¼ÇÉ£¬ÊÇÐí¶àÈËÔÚ´óÁ¿µÄÊý¾Ý¿â·ÖÎöÓëÉè¼ÆÊµ¼ùÖУ¬Öð²½×ܽá³öÀ´µÄ¡£¶ÔÓÚÕâЩ¾ÑéµÄÔËÓ㬶ÁÕß²»ÄÜÉú°ïÓ²Ì×£¬ËÀ¼ÇÓ²±³£¬¶øÒªÏû»¯Àí½â£¬ÊµÊÂÇóÊÇ£¬Áé»îÕÆÎÕ¡£²¢Öð²½×öµ½£ºÔÚÓ¦ÓÃÖз¢Õ¹£¬ÔÚ·¢Õ¹ÖÐÓ¦Óá£
1. Ôʼµ¥¾ÝÓëʵÌåÖ®¼äµÄ¹ØÏµ
¡¡¡¡
  ......
ÔÚJavaÖÐÓÐ23ÖÐÉè¼ÆÄ£Ê½£¬ÏÂÃæÖ»¶Ô²¿·Ö³£ÓõÄÉè¼ÆÄ£Ê½½éÉÜһϣº
1.µ¥Àýģʽ£¨ÓеÄÊéÉÏ˵½Ðµ¥Ì¬Ä£Ê½Æäʵ¶¼Ò»Ñù£©
¸ÃģʽÖ÷ҪĿµÄÊÇʹÄÚ´æÖб£³Ö1¸ö¶ÔÏ󡣿´ÏÂÃæµÄÀý×Ó£º
package org.sp.singleton;
//·½·¨Ò»
public class Singleton {
//½«×ÔÉíµÄʵÀý¶ÔÏóÉèÖÃΪһ¸öÊôÐÔ,²¢¼ÓÉÏStaticºÍfinalÐÞÊηû
private static ......
×î½üÒòΪÐèÒª£¬ÓÖÓÃSSH2½¨Á˸öÏîÄ¿½ÅÊּܡ£
Java³ÌÐòÔ±µÄSSH2µÄ֪ʶ¼¼ÄÜ£¬Èçc³ÌÐòÔ±µÄÖ¸ÕëʹÓü¼ÄÜ£¬ÄË“¹æ¶¨¶¯×÷”£¬²»ÊìϤ˵²»¹ýÈ¥¡£
ºÍJava apiÒ»Ñù£¬SSH2±¾Éí¾ÍÊÇÒ»¸öºÜºÃµÄѧϰ²ÄÁÏ£¬ÓÃÐÄÌå»áºÍÓÃÊìÆäÖÐÒ»ÖÖ£¬¿É·ÅÐÄÐÐ×ßÓÚ½ºþ¡£
ÏÖ½«Ìå»á¼ÇÖ®ÈçÏ£º
Ò»¡¢JavaµÄ³ö´íÐÅÏ¢£¬Ö÷ÒªÔ´ÓÚÈýµã£º
ȱ·¦°ü»ò°ü°æ± ......
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØÇë±êÃ÷³ö´¦£ºhttp://blog.csdn.net/myelse/archive/2009/04/14/4073654.aspx
¿ìËÙÅÅÐòÊǶÔðÅÝÅÅÐòµÄÒ»ÖָĽø¡£ËüµÄ»ù±¾Ë¼ÏëÊÇ£ºÍ¨¹ýÒ»ÌÉÅÅÐò½«ÒªÅÅÐòµÄÊý¾Ý·Ö¸î³É¶ÀÁ¢µÄÁ½²¿·Ö£¬ÆäÖÐÒ»²¿·ÖµÄËùÓÐÊý¾Ý¶¼±ÈÁíÍâÒ»²»²¿·ÖµÄËùÓÐÊý¾Ý¶¼ÒªÐ¡£¬È»ºóÔÙ°´´Î·½·¨¶ÔÕâÁ½²¿·ÖÊý¾Ý·Ö±ð½øÐпìËÙÅÅÐò£¬Õû¸öÅÅÐò¹ý³ ......
¿ìËÙÅÅÐòÊǶÔðÅÝÅÅÐòµÄÒ»ÖָĽø¡£ËüµÄ»ù±¾Ë¼ÏëÊÇ£ºÍ¨¹ýÒ»ÌÉÅÅÐò½«ÒªÅÅÐòµÄÊý¾Ý·Ö¸î³É¶ÀÁ¢µÄÁ½²¿·Ö£¬ÆäÖÐÒ»²¿·ÖµÄËùÓÐÊý¾Ý¶¼±ÈÁíÍâÒ»²»²¿·ÖµÄËùÓÐÊý¾Ý¶¼ÒªÐ¡£¬È»ºóÔÙ°´´Î·½·¨¶ÔÕâÁ½²¿·ÖÊý¾Ý·Ö±ð½øÐпìËÙÅÅÐò£¬Õû¸öÅÅÐò¹ý³Ì¿ÉÒÔµÝ¹é½øÐУ¬ÒÔ´Ë´ïµ½Õû¸öÊý¾Ý±ä³ÉÓÐÐòÐòÁС£
¼ÙÉèÒªÅÅÐòµÄÊý×éÊÇA[1]&hellip ......