NOVOTS KMS ´Ê»ã±í Glossary    ÁªÏµÎÒÃÇ Contact Us
²éѯ Search  
   
°´Àà±ðä¯ÀÀ Browse by Category
NOVOTS KMS .: JAVAÓ¦Ó÷þÎñÆ÷ .: JAVAÉè¼ÆÄ£Ê½¡ª¡ª¹¤³§·½·¨

JAVAÉè¼ÆÄ£Ê½¡ª¡ª¹¤³§·½·¨

    ¶¨ÒåÒ»¸öÓÃÓÚ´´½¨¶ÔÏóµÄ½Ó¿Ú£¬ÈÃ×ÓÀà¾ö¶¨ÊµÀý»¯ÄÄÒ»¸öÀà¡£FactoryMethodʹһ¸öÀàµÄʵÀýÑÓ³Ùµ½Æä×ÓÀà¡£

 ÊÊÓÃÐÔ

 
    1.µ±Ò»¸öÀ಻֪µÀËüËù±ØÐë´´½¨µÄ¶ÔÏóµÄÀàµÄʱºò¡£
 
    2.µ±Ò»¸öÀàÏ£ÍûÓÉËüµÄ×ÓÀàÀ´Ö¸¶¨ËüËù´´½¨µÄ¶ÔÏóµÄʱºò¡£
 
    3.µ±*½«´´½¨¶ÔÏóµÄÖ°ÔðίÍиø¶à¸ö°ïÖú*ÀàÖеÄijһ¸ö£¬²¢ÇÒÏ£Íû½«ÄÄÒ»¸ö°ïÖú×ÓÀàÊÇ´úÀíÕßÕâÒ»ÐÅÏ¢¾Ö²¿»¯µÄʱºò¡£
                       

 ²ÎÓëÕß

 
    1.Product
 ¶¨Ò幤³§·½·¨Ëù´´½¨µÄ¶ÔÏóµÄ½Ó¿Ú¡£
 
    2.ConcreteProduct
 ÊµÏÖProduct½Ó¿Ú¡£
 
    3.Creator
 ÉùÃ÷¹¤³§·½·¨£¬¸Ã·½·¨·µ»ØÒ»¸öProductÀàÐ͵ĶÔÏó*
      CreatorÒ²¿ÉÒÔ¶¨ÒåÒ»¸ö¹¤³§·½·¨µÄȱʡʵÏÖ£¬Ëü·µ»ØÒ»¸öȱʡµÄConcreteProduct¶ÔÏó¡£
 ¿ÉÒÔµ÷Óù¤³§·½·¨ÒÔ´´½¨Ò»¸öProduct¶ÔÏó¡£
 
    4.ConcreteCreator
 Öض¨Ò幤³§·½·¨ÒÔ·µ»ØÒ»¸öConcreteProductʵÀý¡£

 Ààͼ

 Àý×Ó

Product

 
public interface Work {
 
    void doWork();
}

ConcreteProduct

 
public class StudentWork implements Work {
 
    public void doWork() {
        System.out.println("ѧÉú×ö×÷Òµ!");
    }
 
}
 
public class TeacherWork implements Work {
 
    public void doWork() {
        System.out.println("ÀÏʦÉóÅú×÷Òµ!");
    }
 
}

Creator

 
public interface IWorkFactory {
 
    Work get*ork();
}

Concre*eCreator

 
pu*lic class StudentWorkFactory implements IWorkFactory {
 
    public Work getWork() {
        *eturn new StudentWork();
    }
 
}
 
public class TeacherWorkFactory implements IWorkFactory {
 
    public Work getWork() {
        return new TeacherWork();
    }
 
}

Test

 
public class Test {
 
    public static void m*in(Strin*[] args) {
        IWorkFactory studentWorkFactory = new StudentWorkFactory();
        studentWorkFactory.getWork().doWork();
        
        IWorkFactory teacherWorkFactory = new TeacherWorkFactory();
        teacherWorkFactory.g*tWork().doWork();
    }
 
}

result

 
ѧÉú×ö×÷Òµ!
ÀÏʦÉóÅú×÷Òµ!

ÕâÆªÎÄÕ¶ÔÄã¶àÓÐÓã¿

Ïà¹ØÎÄÕÂ

article JAVASE JAVAEE JAVAME·Ö±ðÊÇʲô
¶àÊý±à³ÌÓïÑÔ¶¼ÓÐԤѡ±àÒëºÃµÄÀà¿âÒÔÖ§³Ö¸÷ÖÖÌØ¶¨µ...

(No rating)  3-30-2012    Views: 1083   

Óû§ÆÀÓï

Ìí¼ÓÆÀÓï
µ±Ç°»¹Ã»ÓÐÆÀÓï.


.: .: .: .: .:
[ 怫 ]
±±¾©»¤º½¿Æ¼¼ÓÐÏÞ¹«Ë¾ 2006

Novots Technologies Limited