JavaÉè¼ÆÄ£Ê½ÏµÁн̳̣¨Ò»£©¹¤³§Ä£Ê½factory
½ñÌìºÍ´ó¼ÒÒ»ÆðѧϰJavaµÄÉè¼ÆÄ£Ê½¡£±¾È˵Äˮƽ²»ÊǺܸߣ¬ÕâϵÁÐÎÄÕÂÖ»ÊÇ×Ô¼ºÑ§Ï°µÄ¹ý³Ì£¬²¢Ï£ÍûÄÜͬ´ó¼Ò·ÖÏí¾Ñé¡£
ÏÈ˵ÏÂÎÒ¶Ô¹¤³§Ä£Ê½µÄÀí½â£ºµ±ÎÒÃÇÐèҪij¸ö¶ÔÏóʱ£¬×îÖ±½ÓµÄ°ì·¨ÊÇ¿´µ½Õâ¸ö¶ÔÏó¾ÍÄùýÀ´¡£µ«Êǵ±¶ÔÏó·Ç³£¶àµÄʱºò£¬ÕÒÆðÀ´¾ÍºÜ²»·½±ã¡£Õâʱ¾ÍÐèÒªÒ»¸öÖнéÀ´°ïÖúÎÒÃÇÈ¡µÃÏëÒªµÄ¶«Î÷£¬Õâ¸öÖнé¾ÍÊǹ¤³§£¨factory£©¡£
¹¤³§Ä£Ê½¿É·ÖΪÈý¸ö·ÖÀࣨ¼òµ¥¹¤³§Ä£Ê½Simple Factory¡¢ ¹¤³§·½·¨Ä£Ê½Factory Method¡¢ ³éÏ󹤳§Ä£Ê½Abstract Factory£©
ÎÒÀ´Ä£ÄâÒ»¸ö³¡¾°£º¶¯ÎïÔ°¹ÜÀíԱÿÌ춼Ҫȷ±£¶¯ÎïµÄ½¡¿µ£¬È·¶¨¶¯Î。¿µµÄÒ»ÖÖ¼òµ¥·½·¨¾ÍÊÇÌýÒ»Ìý¶¯ÎïµÄ½ÐÉùÊDz»ÊÇÕý³£¡£ÕâÑù£¬¹ÜÀíÔ±¾ÍÐèÒªËæÊ±ÕÒµ½ÈÎÒ»ÖÖ¶¯ÎïÒÔÈ·¶¨¶¯ÎïµÄÇé¿ö¡£ÏÂÃæÊǶ¯ÎïÏà¹ØÀࣨÖÁÓÚ¶¯Îï԰ΪʲôÓÐèºÍ¹·´ó¼Ò¾Í²»ÒªÌ«¼Æ½ÏÁË……£©£º
interface£ºAnimal£¨¶¯ÎïµÄ½Ó¿Ú£©
package com.captain.factory;
/**
* <P>Title£º¶¯Îï½Ó¿Ú<p>
* @author ´¬³¤¹¤×÷ÊÒ
*/
public interface Animal {
void call();
}
class£ºCat£¨Ã¨£©
package com.captain.factory;
/**
* <p>Title£ºÃ¨<p>
* @author ´¬³¤¹¤×÷ÊÒ
*/
public class Cat implements Animal {
/**
* è½Ð
* @param ÎÞ
* @return void
*/
public void call() {
System.out.print("meow");
}
}
class£ºDog£¨¹·£©
package com.captain.factory;
/**
* <p>Title£º¹·<p>
* @author ´¬³¤¹¤×÷ÊÒ
*/
public class Dog implements Animal {
/**
* ¹·½Ð
* @param ÎÞ
* @return void
*/
public void call() {
System.out.print("bark");
}
}
class£ºTiger£¨ÀÏ»¢£©
package com.captain.factory;
/**
* <p>Title£ºÀÏ»¢<p>
* @author ´¬³¤¹¤×÷ÊÒ
*/
public class Tiger implements Animal {
/**
* ÀÏ»¢½Ð
* @param ÎÞ
* @return void
*/
public void call() {
System.out.print("roar");
}
}
ÏÂÃæÏȽéÉܼòµ¥¹¤³§Ä£Ê½£º
class£ºSimpleFactory£¨¼òµ¥¹¤³§£©
package com.captain.factory;
/**
* <p>Title£º¼òµ¥¹¤³§Ä£Ê½-¹¤³§Àà<p>
* @author ´¬³¤¹¤×÷ÊÒ
*/
public class SimpleFactory {
/**
* ÕÙ»½¶¯Îï
* @param s ÕÙ»½¶¯ÎïµÄÖÖÀà
* @return animal ¸ÃÖÖÀàµÄ¶¯ÎïʵÀý
*/
public static Animal search(String s){
Ïà¹ØÎĵµ£º
JavaµÄException·ÖΪÁ½À࣬һÀàÊÇRuntimeException¼°Æä×ÓÀ࣬ÁíÍâÒ»Àà¾ÍÊÇchecked
Exception¡£JavaÒªÇóº¯Êý¶ÔûÓб»catch´¦ÀíµôµÄchecked
Exception£¬ÐèÒª½«ÆäдÔÚº¯ÊýµÄÉùÃ÷²¿·Ö¡£È»¶ø£¬ÕâÒ»ÒªÇó³£³£¸ø³ÌÐòÔ±´øÀ´Ò»Ð©²»±ØÒªµÄ¸ºµ£¡£
ΪÁ˱ÜÃâÔÚº¯ÊýÉùÃ÷ÖÐдthrows²¿·Ö£¬ÔÚJavaÏîÄ¿ÀïÃæ³£³£¿ÉÒÔ¿´µ½ÒÔÏ´úÂëÓÃÀ´‘Í ......
ǰÑÔ£º
±¾ÎÄÊǶÔJava¼¯ºÏ¿ò¼Ü×öÁËÒ»¸ö¸ÅÀ¨ÐԵĽâ˵£¬Ä¿µÄÊǶÔJava¼¯ºÏ¿ò¼ÜÌåϵÓиö×ÜÌåÈÏʶ£¬Èç¹ûÄãÏëѧϰ¾ßÌåµÄ½Ó¿ÚºÍÀàµÄʹÓ÷½·¨£¬Çë²Î¿´Java APIÎĵµ¡£
Ò»¡¢¸ÅÊö
Êý¾Ý½á¹¹¶Ô³ÌÐòÉè¼ÆÓÐ×ÅÉîÔ¶µÄÓ°Ï죬ÔÚÃæÏò¹ý³ÌµÄCÓïÑÔÖУ¬Êý¾Ý¿â½á¹¹ÓÃstructÀ´ÃèÊö£¬¶øÔÚÃæÏò¶ÔÏóµÄ±à³ÌÖУ¬Êý¾Ý½á¹¹ÊÇÓÃÀàÀ´ÃèÊöµÄ£¬²¢ÇÒ°üº¬ÓжԸÃÊ ......
¶ÔÏóÖ»ÄÜ´æÔÚÓÚÄÚ´æÖÐ £¬¶øÄÚ´æÖв»ÄÜÓÀ¾Ã±£´æÊý¾Ý¡£Èç¹ûÒªÓÀ¾Ã±£´æ¶ÔÏóµÄ״̬£¬ÐèÒª½øÐжÔÏóµÄ³Ö¾Ã»¯£¬¼´°Ñ¶ÔÏó´æ´¢µ½×¨ÃŵÄÊý¾Ý´æ´¢¿âÖРĿǰ£¬¹ØÏµÊý¾Ý¿âȽȽÊÇʹÓÃ×î¹ã·ºµÄÊý¾Ý´æ´¢¿â¡£¹ØÏµÊý¾Ý¿âÖдæ·ÅµÄÊǹØÏµÊý¾Ý£¬ËüÊÇ·ÇÃæÏò¶ÔÏóµÄ¡£
³Ö¾Ã»¯Êǽ«JavaÐéÄâ»ú¶ÔÏó³Ö¾Ã±£´æ£¬¶ø²»Êǽ«Êý¾Ý¿âÓ³ÉäΪ¶ÔÏó£¬Í¨³£Êý¾ÝµÄ´æ´¢ ......
¹ØÓÚJavaµÄ»ù´¡ÖªÊ¶£¬Êµ¼ùÖ¤Ã÷ѧϰOO£¬×îÖÕÁìÎò“¸¸Àà¿ØÖÆÁ÷³Ì£¬×ÓÀàʵÏÖ¾ßÌåµÄÒµÎñÂß¼”µÄOO˼Ï룬ÐèÒªµÄ²»ÊÇÖÇÉ̶øÊÇ»ù´¡£¬Ò²¾ÍÊÇ˵£¬»ù´¡Ô½ºÃÔ½¿ìÁìÎò£¬ËùÒÔÇëÿλS1ѧϰJavaµÄѧԱÇëÀμÇÒÔÏÂJavaÁìÓòµÄ»ù´¡ÖªÊ¶£¬×îºó×£¸÷λѧԱÔÚ¿ª·¢ÏîĿǰ¿ÉÒÔÁìÎòOOµÄÕæÚУ¬ÀÏʦҲ»á½ß¾¡È«Á¦ÖúÄãÃÇ´òͨÕâµÀͨÏòJavaµÄ¼«ËÙ ......