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){
Ïà¹ØÎĵµ£º
package com.eastpro.batch.biz;
//import javax.activation.*;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.internet.*;
import javax.mail.*;
import java.io.UnsupportedEncodingException;
import java.util.*;
/**
* Insert the type's descript ......
javaµÄ·¾¶ÈÃÐí¶àÈË£¬ÌرðÊdzõѧÕ߸е½ÃÔ»ó£¬ÎÒÕâÀïÔÙ½âÊÍһϡ£ÎÒÃÇ·Ö2¸ö½×¶Î£¬1ÊDZàÒë½×¶Î£¬2ÊÇÔËÐн׶Ρ£
Ò»¡¢±àÒë½×¶Î
Õâ¸öʱºò£¬ÎÒÃÇÒªÌṩ¸ø±àÒëÆ÷µÄÓÐ2¸ö·¾¶²ÎÊý£¬µÚÒ»¸öÊÇÔ´´úÂëÔÚÄÄÀҲ¾ÍÊÇ sourcepath,µÚ¶þ¸ö¾ÍÊÇÒÀÀµµÄÀàÔÚÄÄÀҲ¾ÍÊÇ classpath
ÎÒÃÇ¿´Ò»¸öÀý×Ó
d:\temp\TestCP\d1\p1\Clas ......
ÓÃJava±àдӦÓÃʱ£¬ÓÐʱÐèÒªÔÚ³ÌÐòÖе÷ÓÃÁíÒ»¸öÏֳɵĿÉÖ´ÐгÌÐò»òϵͳÃüÁÕâʱ¿ÉÒÔͨ¹ý×éºÏʹÓÃJavaÌṩµÄRuntimeÀàºÍProcessÀàµÄ·½·¨ÊµÏÖ¡£ÏÂÃæÊÇÒ»ÖֱȽϵäÐ͵ijÌÐòģʽ£º
...
Process process = Runtime.getRuntime().exec(".\\p.exe");
process.waitfor( );
...
ÔÚÉÏÃæµÄ³ÌÐòÖУ¬µÚÒ»Ðеē.\\p.exe& ......
±¾È˾ãËÄÄêÑз¢¾Ñ飨javaµÄ£©
˸øÎÒÍÆ¼ö·ÝǶÈëʽcְ룬cÓïÑÔһֱûÂäÏ£¬Ñ§µÄ»¹ÐС£¡£¡£¹¤×Ê¿ªÎÒ2k¾ÍÐУ¡
ֻΪ³É¹¦´òÈëǶÈëʽÊг¡¡£¡£¡£¸ø¸ö»ú»á°É¡£¡£
ÎÒÕæµÄÊÇÌ«ÏëºÍÄãÃÇ×öͬÐÐÀ²£¡
ÓÐÒâÏòµÄ¿ÉÒÔÁªÏµÎÒ¡£¡£ÎÒ²»Ìô´ýÓö£¬¶Ô¹¤×÷¾ÍÒ»¸öÒªÇó£¬Ç¶Èëʽ¿ª·¢¡£¡£¡£ÎÒÓе쬾ÍÊÇ4ÄêµÄjavaÑз¢¾ÑéºÍc»ù´¡¡£¡£¡£ÌáÇ ......
public boolean writeXML(String content, String filename)
{
String savepath;
FileOutputStream fout;
// log.info("content:"+content+ ......