锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久亚洲AV成人无码国产,亚洲国产精品狼友中文久久久,97亚洲熟妇自偷自拍另类图片http://www.tkk7.com/chaocai/category/8363.htmlzh-cnTue, 27 Feb 2007 12:16:36 GMTTue, 27 Feb 2007 12:16:36 GMT60渚濊禆娉ㄥ叆錛圖ependency Injection錛夋ā寮忕殑鐗圭偣鍒嗘瀽涓庡疄鐜?/title><link>http://www.tkk7.com/chaocai/articles/34913.html</link><dc:creator>瓚呰秺宸呭嘲</dc:creator><author>瓚呰秺宸呭嘲</author><pubDate>Sun, 12 Mar 2006 07:50:00 GMT</pubDate><guid>http://www.tkk7.com/chaocai/articles/34913.html</guid><wfw:comment>http://www.tkk7.com/chaocai/comments/34913.html</wfw:comment><comments>http://www.tkk7.com/chaocai/articles/34913.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/chaocai/comments/commentRss/34913.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/chaocai/services/trackbacks/34913.html</trackback:ping><description><![CDATA[<P align=center><B><SPAN>渚濊禆娉ㄥ叆錛?/SPAN><SPAN lang=EN-US>Dependency Injection</SPAN></B><B><SPAN>錛?/SPAN></B><B><SPAN>妯″紡鐨勭壒鐐瑰垎鏋愪笌瀹炵幇</SPAN></B><B></B></P> <P align=center><B><SPAN>鈥曗曟瀯閫犲瓙娉ㄥ叆</SPAN></B><B><SPAN>錛?/SPAN></B><B><SPAN lang=EN-US>Constructor Injection</SPAN></B><B><SPAN>錛?/SPAN></B><B><SPAN>妯″紡鐨勫垎鏋愪笌瀹炵幇</SPAN></B><B></B></P> <P align=center><B><SPAN lang=EN-US></SPAN></B> </P> <P align=center><B><SPAN lang=EN-US></SPAN></B> </P> <P align=center><SPAN>钄?/SPAN><SPAN lang=EN-US><SPAN>  </SPAN><SPAN>瓚?/SPAN></P> <P align=center><SPAN>錛?/SPAN><SPAN lang=EN-US>chaocai2001@yahoo.com.cn</SPAN><SPAN>錛?/SPAN></P> <P align=center><SPAN lang=EN-US></SPAN> </P> <P><B><SPAN>鎽樿</SPAN></B><SPAN>錛氭湰鏂囧</SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡銆佷緷璧栨敞鍏?/SPAN><SPAN lang=EN-US>(Dependency Injection) </SPAN><SPAN>妯″紡鍋氫簡綆瑕佷粙緇嶏紝鏂囦腑鍒嗘瀽鏋勯犲瓙娉ㄥ叆妯″紡涓庡叾浠栨ā寮忕浉姣旇緝鐨勪紭鍔垮拰鐗圭偣錛屽茍緇欏嚭浜嗗湪</SPAN><SPAN lang=EN-US>JAVA</SPAN><SPAN>涓疄鐜拌妯″紡鐨勬柟娉曘?/SPAN></P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US></SPAN> </P> <H1><SPAN lang=EN-US><SPAN>1<SPAN>         </SPAN></SPAN><SPAN>寮曡█</SPAN></H1> <P><SPAN lang=EN-US>IoC</SPAN><SPAN>錛?/SPAN><SPAN lang=EN-US>Inversion of Control</SPAN><SPAN>錛夋ā寮忎互琚洰鍓嶇殑杞婚噺綰у鍣ㄦ墍騫挎硾搴旂敤錛岄氳繃</SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡榪欎簺瀹瑰櫒甯姪寮鍙戣呭皢鏉ヨ嚜涓嶅悓欏圭洰鐨勭粍浠惰閰嶆垚涓涓唴鑱氱殑搴旂敤紼嬪簭銆傝交閲忕駭鐨?/SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>瀹瑰櫒錛堝</SPAN><SPAN lang=EN-US>Spring</SPAN><SPAN>銆?/SPAN><SPAN lang=EN-US>pico-container</SPAN><SPAN>錛夎櫧鐒朵負鎴戜滑鐨勫紑鍙戞彁渚涗簡寰堝ぇ鐨勪究鍒╋紝浣嗘槸鍦ㄥ緢澶氭儏鍐典笅榪欎簺杞婚噺綰у鍣ㄦ墍鎻愪緵鐨勫姛鑳藉茍涓嶄竴瀹氶潪甯擱傚悎鎴戜滑鐨勯渶瑕侊紝涔熻榪欎簺瀹瑰櫒鐨勫姛鑳借繃浜庡簽澶т簡錛屾垨鑰呮墍鎻愪緵鐨勫姛鑳界己涔忓鐗瑰畾搴旂敤鐨勯拡瀵規э紝鎴栬呮垜浠渶瑕佹洿楂樼殑榪愯鏁堢巼錛岃繖鏃舵垜浠彲浠ュ湪浜嗚В</SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>鐨勫師鐞嗙殑鍩虹涓婂埄鐢?/SPAN><SPAN lang=EN-US>JAVA</SPAN><SPAN>鐨勫弽灝勬満鍒惰嚜宸卞疄鐜扮伒媧葷殑銆佸彲鎵╁睍鐨勭粍浠舵満鍒躲?/SPAN></P> <H1><SPAN lang=EN-US><SPAN>2<SPAN>         </SPAN></SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>涓庝緷璧栨敞鍏ワ紙</SPAN><SPAN lang=EN-US>Dependency Injection</SPAN><SPAN>錛夋ā寮忕畝浠?/SPAN></H1> <P><SPAN>涓?/SPAN><SPAN lang=EN-US>GoF</SPAN><SPAN>鐨勮璁℃ā寮忕浉鍚岋紝</SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡鍚屾牱鏄叧娉ㄩ噸鐢ㄦэ紝浣嗕笌</SPAN><SPAN lang=EN-US>GoF</SPAN><SPAN>妯″紡涓嶅悓鐨勬槸</SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡鏇村姞鍏蟲敞浜岃繘鍒剁駭鐨勯噸鐢ㄦу拰鍙墿灞曟э紝鍗沖彲浠ョ洿鎺ラ氳繃浜岃繘鍒剁駭榪涜鎵╁厖錛屽鐢ㄧ殑妯″潡閫氬父琚О涓虹粍浠舵垨鑰呮彃浠訛紝緇勪歡鍜屾彃浠墮兘鏄湪榪愯鏃惰繘琛岃杞界殑銆?/SPAN></P> <P><SPAN lang=EN-US>GoF</SPAN><SPAN>鐨勮璁℃ā寮忎腑鎴戜滑澶ч噺鐪嬪埌鐨勬槸闈㈠悜鎺ュ彛緙栫▼錛?/SPAN><SPAN lang=EN-US>Interface Driven Design </SPAN><SPAN>鎺ュ彛椹卞姩錛屾帴鍙i┍鍔ㄦ湁寰堝濂藉錛屽彲浠ユ彁渚涗笉鍚岀伒媧葷殑瀛愮被瀹炵幇錛屽鍔犱唬鐮佺ǔ瀹氬拰鍋ュ.鎬х瓑絳夛紝浣嗘槸鎺ュ彛涓瀹氭槸闇瑕佸疄鐜扮殑錛屼篃灝辨槸濡備笅璇彞榪熸棭瑕佹墽琛岋細</SPAN></P> <P><SPAN lang=EN-US>AInterface a = new AInterfaceImp(); </SPAN></P> <P><SPAN>鐢變簬浠ヤ笂鐨勪唬鐮佽鍐欏叆浜嗚皟鐢ㄨ呯▼搴忎腑錛屽悓鏃惰薄</SPAN><SPAN lang=EN-US>AinterfaceImp</SPAN><SPAN>榪欐牱鐨勬帴鍙g殑瀹炵幇綾繪槸鍦ㄧ紪璇戞椂琚杞界殑錛屽鏋滀互鍚庢兂鍔犲叆鏂扮殑鎺ュ彛瀹炵幇綾誨垯蹇呴』淇敼璋冪敤鑰呯殑浠g爜銆?/SPAN></P> <P><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡涓庝互涓婃儏鍐典笉鍚岋紝鎺ュ彛鐨勫疄鐜扮被鏄湪榪愯鏃惰瑁呰澆鐨勶紝榪欐牱鍗充嬌浠ュ悗鏂版坊鍔犱簡鎺ュ彛瀹炵幇綾繪槸涔熶笉闇淇敼璋冪敤鑰呯殑浠g爜錛堝彲浠ラ氳繃鐗瑰畾鐨勬柟寮忔潵瀹氫綅鏂板鐨勫疄鐜扮被錛屽閰嶇疆鏂囦歡鎸囧畾錛夈?/SPAN><SPAN lang=EN-US>IoC</SPAN><SPAN>鑻辨枃涓?/SPAN><SPAN lang=EN-US> Inversion of Control</SPAN><SPAN>錛屽嵆鍙嶈漿妯″紡錛岃繖閲屾湁钁楀悕鐨勫ソ鑾卞潪鐞嗚錛氫綘鍛嗙潃鍒姩錛屽埌鏃舵垜浼氭壘浣犮?/SPAN></P> <P><SPAN lang=EN-US>IoC</SPAN><SPAN>妯″紡鍙互寤剁紦鎺ュ彛鐨勫疄鐜幫紝鏍規嵁闇瑕佸疄鐜幫紝鏈変釜姣斿柣錛氭帴鍙e鍚岀┖鐨勬ā鍨嬪錛屽湪蹇呰鏃訛紝闇瑕佸悜妯″瀷濂楁敞灝勭煶鑶忥紝榪欐牱鎵嶈兘鎴愪負涓涓ā鍨嬪疄浣擄紝鍥犳錛?/SPAN><SPAN>瀵逛簬榪欎簺鏂扮敓鐨勫鍣紝瀹冧滑鍙嶈漿鐨勬槸鈥滃浣曞畾浣嶆彃浠剁殑鍏蜂綋瀹炵幇鈥濄傚洜姝わ紝</SPAN><SPAN> </SPAN><SPAN lang=EN-US>Martin Fowler</SPAN><SPAN lang=EN-US> </SPAN><SPAN>緇欒繖縐嶆ā寮忚搗浜嗕竴涓艦璞$殑鍚嶇О</SPAN><SPAN>鈥滀緷璧栨敞鍏モ?/SPAN><SPAN>錛?/SPAN><SPAN lang=EN-US>Dependency Injection</SPAN><SPAN>錛?/SPAN><SPAN>銆?INPUT class="" id=Image1 title="" type=image src="http://chaocai.cnblogs.com/Files/chaocai/1.jpg" value=Image1><BR></SPAN></P> <P></P> <P align=center><SPAN>鍥捐〃</SPAN> <SPAN lang=EN-US><SPAN><SPAN>1</SPAN> </SPAN><SPAN>閲囩敤</SPAN><SPAN lang=EN-US>Dependency Injection</SPAN><SPAN>鍓嶅悗鐨勪緷璧栧叧緋誨彉鍖?/SPAN></P> <P><SPAN>渚濊禆娉ㄥ叆鐨勫艦寮忎富瑕佹湁涓夌錛屽垎鍒皢瀹冧滑鍙仛鏋勯犲瓙娉ㄥ叆錛?/SPAN><SPAN lang=EN-US>Constructor Injection</SPAN><SPAN>錛夈佽鍊兼柟娉曟敞鍏ワ紙</SPAN><SPAN lang=EN-US>Setter Injection</SPAN><SPAN>錛夊拰鎺ュ彛娉ㄥ叆錛?/SPAN><SPAN lang=EN-US>Interface Injection</SPAN><SPAN>錛夈?/SPAN></P> <P><SPAN>榪欎笁縐嶆柟寮忓湪<SPAN lang=EN-US>Martin Fowler鐨勩?/SPAN><SPAN lang=EN-US>Inversion of Control Containers and the Dependency Injection pattern</SPAN><SPAN>銆嬩腑閮界粰鍑轟簡璇︾粏鐨勫畾涔夊強璇存槑錛屾湰鏂囧氨涓嶅啀璧樿堪浜嗭紝涓嬮潰鐨勫唴瀹瑰皢鐫閲嶄粙緇?/SPAN><SPAN>鏋勯犲瓙娉ㄥ叆妯″紡鐨勭壒鐐瑰強瀹炵幇鏂規硶銆?/SPAN></P> <H1><SPAN lang=EN-US><SPAN>3<SPAN>         </SPAN></SPAN><SPAN>鏋勯犲瓙娉ㄥ叆妯″紡鐨勭壒鐐瑰強瀹炵幇</SPAN></H1> <H2><SPAN lang=EN-US><SPAN>3.1<SPAN>      </SPAN></SPAN><SPAN>鏋勯犲瓙娉ㄥ叆妯″紡鐨勭壒鐐?/SPAN></H2> <P><SPAN>閫氬父鎯呭喌涓嬭</SPAN><SPAN>鍊?/SPAN><SPAN>鏂規硶娉ㄥ叆鍜屾帴鍙f敞鍏ヨ緝鏄撲簬琚紑鍙戜漢鍛樻帴鍙楋紝鑰屾瀯閫犲瓙娉ㄥ叆鍒欏簲鐢ㄨ緝灝戯紝瀹為檯涓婃瀯閫犲瓙娉ㄥ叆鍏鋒湁寰堝鍏朵粬涓よ呮墍涓嶅叿鏈夌殑浼樺娍錛?/SPAN></P> <P><SPAN lang=EN-US>1 </SPAN><SPAN>鏋勯犲瓙娉ㄥ叆褰㈡垚浜嗕竴縐嶆洿寮虹殑渚濊禆濂戠害</SPAN></P> <P><SPAN lang=EN-US>2 </SPAN><SPAN>鍙互鑾峰緱鏇村姞綆鏄庣殑浠g爜</SPAN></P> <P><SPAN lang=EN-US>3 </SPAN><SPAN>鏇村姞綆鏄庣殑渚濊禆澹版槑鏈哄埗錛屾棤欏誨畾涔?/SPAN><SPAN lang=EN-US>XML</SPAN><SPAN>閰嶇疆鏂囦歡鎴栬</SPAN><SPAN>鍊?/SPAN><SPAN>鏂規硶</SPAN></P> <P><SPAN lang=EN-US>4 </SPAN><SPAN>鏇村姞絎﹀悎鎺ュ彛涓庡疄鐜板垎紱葷殑緇勪歡鐗瑰緛錛岀粍浠舵帴鍙h〃鏄庤兘澶熷悜鍏跺畠緇勪歡鎻愪緵鐨勬湇鍔★紝鑰屽疄鐜板垯搴旇鏄墍鎻愪緵鏈嶅姟鐨勫疄鐜板簲璇ヤ笌鏈嶅姟濂戠害鏃犲叧錛堝嵆涓嶅簲鍖呭惈鐢ㄤ簬鑾峰緱渚濊禆鐨勮鍊兼柟娉曠瓑錛夈?/SPAN></P> <P><SPAN lang=EN-US>5 </SPAN><SPAN>涓嶄細鍑虹幇涓嶇‘瀹氱殑鐘舵併傚湪璁懼兼柟娉曟敞鍏ヤ腑錛岀敱浜庡茍涓嶆槸鎵鏈夌殑璁懼兼柟娉曪紙</SPAN><SPAN lang=EN-US>setter</SPAN><SPAN>錛夐兘涓瀹氫細琚皟鐢ㄧ殑錛屾墍浠ヤ細鏈変笉紜畾鐘舵併?/SPAN></P> <P><SPAN>浠庝互涓婂嚑鐐規垜浠繕鍙互鍒嗘瀽鍑烘瀯閫犲瓙娉ㄥ叆瀵逛簬緇勪歡浠g爜鐨勫叆渚墊ц繙灝忎簬鍏跺畠涓ょ妯″紡</SPAN><SPAN lang=EN-US>(</SPAN><SPAN>鎺ュ彛娉ㄥ叆浣垮緱緇勪歡蹇呴』瀹炵幇鐗瑰畾鎺ュ彛錛岃鍊兼柟娉曞悓鏍瘋姹傜粍浠舵彁渚涚壒瀹氱殑</SPAN><SPAN lang=EN-US>setter</SPAN><SPAN>鏂規硶</SPAN><SPAN lang=EN-US>)</SPAN><SPAN>錛屼唬鐮佹洿鍔犳槗浜庣淮鎶?/SPAN><SPAN>銆?INPUT class="" id=Image2 title="" type=image src="http://chaocai.cnblogs.com/Files/chaocai/2.jpg" value=Image2></SPAN></P> <P align=center></P> <P align=center><SPAN>鍥捐〃</SPAN> <SPAN lang=EN-US><SPAN><SPAN>2</SPAN> </SPAN><SPAN>紺轟緥涓被鐨勫叧緋?/SPAN></P> <P><SPAN lang=EN-US>Client</SPAN><SPAN>鐨勫疄鐜頒緷璧栦簬鎺ュ彛</SPAN><SPAN lang=EN-US>A</SPAN><SPAN>銆?/SPAN><SPAN lang=EN-US>B</SPAN><SPAN>鍜?/SPAN><SPAN lang=EN-US>C</SPAN><SPAN>鐨勫疄鐜幫紝浣嗘槸涓轟簡鎻愪緵緋葷粺鏇村ソ鐨勭伒媧繪у拰鍙墿灞曟э紝鍚勬帴鍙g殑瀹炵幇浠ョ粍浠剁殑鏂瑰紡鍒╃敤</SPAN><SPAN lang=EN-US>java</SPAN><SPAN>鐨勫弽灝勬満鍒惰繘琛岃繍琛屾椂瑁呰澆錛屾敞鎰忓埌緇勪歡闂村彲鑳戒細瀛樺湪鏌愮渚濊禆鍏崇郴錛屼緥濡傜粍浠?/SPAN><SPAN lang=EN-US>AX</SPAN><SPAN>渚濊禆涓庢帴鍙?/SPAN><SPAN lang=EN-US>B</SPAN><SPAN>鐨勫疄鐜扮被錛岃岃繖涓緷璧栧叧緋誨繀欏誨湪榪愯鏃跺姩鎬佹敞鍏ワ紝緇勪歡涓轟簡鍛婅瘔緇勪歡鐨勮皟鐢ㄨ呰繖縐嶄緷璧栧叧緋諱互渚挎敞鍏ワ紝鍙互浣跨敤涓婃枃鎻愬埌鐨勫悇縐嶆ā寮忥細</SPAN></P> <P><SPAN lang=EN-US>1 </SPAN><SPAN>浣跨敤鎺ュ彛娉ㄥ叆妯″紡</SPAN></P> <P><SPAN lang=EN-US>public interface InjectB{</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void injectB(B bImp);</SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US>public interface InjectC{</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void injectC(C cImp);</SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US>public class AImp implements A,InjectB,InjectC{</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void injectB(B bImp);</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void injectC(C cImp);</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US>2 </SPAN><SPAN>浣跨敤璁懼兼敞鍏ユā寮?/SPAN></P> <P><SPAN lang=EN-US>public class AImp implements A {</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void setB(B bImp);</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public void setC(C cImp);</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US>3 </SPAN><SPAN>浣跨敤鏋勯犲瓙娉ㄥ叆妯″紡</SPAN></P> <P><SPAN lang=EN-US>public class AImp implements A {</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>public AImp(B bImp, C cImp){</SPAN></P> <P><SPAN lang=EN-US><SPAN>              </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>}</SPAN></P> <P><SPAN lang=EN-US><SPAN>       </SPAN>鈥?/SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN>鐢變互涓婂疄渚嬪彲浠ユ竻妤氱殑鐪嬪嚭閲囩敤鏋勯犲瓙娉ㄥ叆妯″紡鐨勫疄鐜扮粍浠朵唬鐮佹渶涓虹畝鍗曪紝涓旀墍鍙楃殑鍏ヤ鏡鎬ф渶灝忋?/SPAN></P> <H2><SPAN lang=EN-US><SPAN>3.2<SPAN>      </SPAN></SPAN><SPAN>鍦?/SPAN><SPAN lang=EN-US>JAVA</SPAN><SPAN>涓疄鐜版瀯閫犲瓙娉ㄥ叆妯″紡</SPAN></H2> <P><SPAN>鍦?/SPAN><SPAN lang=EN-US>java</SPAN><SPAN>鍙?/SPAN><SPAN lang=EN-US>.NET</SPAN><SPAN>榪欐牱鍏鋒湁鍙嶅皠鍔熻兘鐨勮璦涓疄鐜扮被鍨嬬殑榪愯鏃惰澆鍏ュ茍涓嶅鏉傦紝鍙閫氳繃</SPAN><SPAN lang=EN-US>Class.forName</SPAN><SPAN>鎴栫敓鎴愯嚜宸辯殑</SPAN><SPAN lang=EN-US>ClassLoader</SPAN><SPAN>灝卞彲浠ュ疄鐜般?/SPAN></P> <P><SPAN>鍚屾牱鎴戜滑鍙互閫氳繃鍙嶅皠鏈哄埗鑾峰彇緇勪歡鏋勯犲嚱鏁扮殑鍙傛暟錛屾敞鍏ョ浉搴旀帴鍙g殑瀹炵幇錛屼綔鑰呭皢姝よ繃紼嬭繘琛屼簡灝佽錛屼互涓嬫槸浠g爜錛?/SPAN></P> <P><SPAN lang=EN-US>public class RefectHelper {</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>public Object ConstructorHelper(String className,ConstructorParamDeal pd) throws Exception{</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>try{</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>//</SPAN><SPAN>鑾峰彇綾諱腑鐨勬瀯閫犲嚱鏁?/SPAN></P> <P><SPAN lang=EN-US>Constructor[] constructs=Class.forName(className).getConstructors();<SPAN>              </SPAN>//</SPAN><SPAN>瀹炵幇涓粯璁や嬌鐢ㄧ涓涓瀯閫犲嚱鏁扮被鍒涘緩瀹炰緥</SPAN><SPAN lang=EN-US><SPAN>       </SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>Class [] classes=constructs[0].getParameterTypes();<SPAN>                   </SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN><SPAN>       </SPAN><SPAN>              </SPAN>//</SPAN><SPAN>鑾峰彇瑕佹敞鍏ョ殑鍙傛暟瀹炰緥</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>Object []obj=pd.dealParam(classes);</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>//</SPAN><SPAN>鍒涘緩瀹炰緥</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>return constructs[0].newInstance(obj);</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>}catch(Exception e){</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>throw e;</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>}</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>}</SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US>/**</SPAN></P> <P><SPAN lang=EN-US>*</SPAN><SPAN>鏋勯犲嚱鏁板弬鏁版敞鍏?/SPAN></P> <P><SPAN lang=EN-US>**/</SPAN></P> <P><SPAN lang=EN-US>public interface ConstructorParamDeal {</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>/**</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>*</SPAN><SPAN>鏍規嵁鏋勯犲嚱鏁頒腑鍙傛暟鐨勭被鍨嬫敞鍏?/SPAN><SPAN lang=EN-US>,</SPAN><SPAN>鐩稿簲鐨勫疄鐜?/SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>@param classes </SPAN><SPAN>鏋勯犲嚱鏁扮殑鍙傛暟綾誨瀷</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN><SPAN>鈼?/SPAN><SPAN lang=EN-US>return </SPAN><SPAN>娉ㄥ叆鏋勯犲嚱鏁扮殑鍙傛暟瀹炵幇</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>**/</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>public Object [] dealParam(Class [] classes);</SPAN></P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN lang=EN-US>public class ParamDeal implements ConstructorParamDeal{</SPAN></P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US><SPAN>         </SPAN>/* (non-Javadoc)</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN><SPAN> </SPAN>* @see com.topsec.tsm.agent.helper.ConstructorParamDeal#dealParam(java.lang.Class[])</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN><SPAN> </SPAN>*/</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>public Object [] dealParam(Class[] classes) {</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>Object [] obj=new Object[classes.length];</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>for (int i=0;i<obj.length;i++){</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>//</SPAN><SPAN>涓轟笉鍚岀被鍨嬫敞鍏ラ夋嫨涓嶅悓瀹炰緥</SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>if (classes[i].equals(String.class)){</SPAN></P> <P><SPAN lang=EN-US><SPAN>                                     </SPAN>obj[i]=鈥滺ello World鈥?<SPAN>                                        </SPAN></P> <P><SPAN lang=EN-US><SPAN>                            </SPAN>}</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>}</SPAN></P> <P><SPAN lang=EN-US><SPAN>                   </SPAN>return obj;</SPAN></P> <P><SPAN lang=EN-US><SPAN>         </SPAN>}</SPAN></P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US>}</SPAN></P> <P><SPAN>涓婇潰鐨勭▼搴忎腑</SPAN><SPAN lang=EN-US>ConstructorHelper</SPAN><SPAN>鐢ㄤ簬鍒╃敤鍙嶅皠鏈哄埗鏋氫婦鍑鴻澆鍏ョ被鐨勬瀯閫犲嚱鏁板強鏋勯犲嚱鏁扮殑鍙傛暟鐨勭被鍨嬶紝鑷充簬涓嶅悓綾誨瀷娉ㄥ叆浠涔堟牱鐨勫疄渚嬪垯鐢?/SPAN><SPAN lang=EN-US>ContructorParamDeal</SPAN><SPAN>鐨勫疄鐜拌呮潵鍐沖畾錛?/SPAN><SPAN lang=EN-US>ContructorParamDeal</SPAN><SPAN>鐨勫疄鐜拌呭悓鏍峰彲浠ヤ互緇勪歡鐨勫艦寮忓湪榪愯鏃跺姩鎬佽澆鍏ャ傜敱浜庣粍浠墮棿鐨勪緷璧栧叧緋葷殑鍒剁害錛屾墍浠ョ粍浠跺疄渚嬪寲鐨勯『搴忛渶瑕佺壒鍒冭檻銆?/SPAN></P> <H1><SPAN lang=EN-US><SPAN>4<SPAN>         </SPAN></SPAN><SPAN>緇撴潫璇?/SPAN></H1> <P><SPAN>涓夌渚濊禆娉ㄥ叆妯″紡鍚勬湁鍏剁壒鐐瑰拰浼樺娍錛屽彧鏈夊厖鍒嗙悊瑙h繖浜涙ā寮忛棿鐨勪笉鍚岋紝鎵嶈兘涓鴻嚜宸辯殑搴旂敤閫夋嫨姝g‘鐨勪緷璧栨敞鍏ユā寮忥紝鏂囦腑浠嬬粛鐨勬瀯閫犲瓙娉ㄥ叆妯″紡瀹炵幇鏂規硶錛屽湪浣跨敤鍏朵粬鍏鋒湁鍙嶅皠鍔熻兘鐨勮璦錛堝錛?/SPAN><SPAN lang=EN-US>.NET</SPAN><SPAN>錛夋椂鍚屾牱鍙互鍙傝冦?/SPAN></P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US></SPAN> </P> <P><SPAN lang=EN-US></SPAN> </P> <P><B><SPAN lang=EN-US><SPAN> </SPAN>[</SPAN></B><B><SPAN>鍙傝冩枃鐚?/SPAN></B><B><SPAN lang=EN-US>]</SPAN></B></P> <P><SPAN lang=EN-US>1 </SPAN><SPAN lang=EN-US>Martin Fowler,Inversion of Control Containers and the Dependency Injection pattern,<A ><SPAN>http://www.martinfowler.com/articles/injection.html</SPAN></A>,2004</SPAN></P> <P><SPAN lang=EN-US>2 Erich Gamma,Design Patterns,Addison Wesley,1999</SPAN></P> <P><SPAN lang=EN-US>3 <A ><SPAN>http://www.picocontainer.org/</SPAN></A></SPAN></P> <P><SPAN lang=EN-US>4 </SPAN><SPAN lang=EN-US><A ><SPAN>褰櫒闃?/SPAN></A>,</SPAN><SPAN lang=EN-US>Ioc</SPAN><SPAN>妯″紡</SPAN><SPAN lang=EN-US>,</SPAN><SPAN lang=EN-US> http://www.jdon.com,2004</SPAN></P></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN><img src ="http://www.tkk7.com/chaocai/aggbug/34913.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/chaocai/" target="_blank">瓚呰秺宸呭嘲</a> 2006-03-12 15:50 <a href="http://www.tkk7.com/chaocai/articles/34913.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://webgame86.com" target="_blank">成人免费无遮挡无码黄漫视频</a>| <a href="http://guilinsix.com" target="_blank">91精品国产免费</a>| <a href="http://amgzh.com" target="_blank">亚洲人成网站在线播放2019</a>| <a href="http://hhrrrr.com" target="_blank">亚洲日本一区二区三区在线</a>| <a href="http://langtuojidian.com" target="_blank">免费的一级片网站</a>| <a href="http://caocl1024liu.com" target="_blank">色播精品免费小视频</a>| <a href="http://xyzch.com" target="_blank">97av免费视频</a>| <a href="http://91haikala.com" target="_blank">6080午夜一级毛片免费看</a>| <a href="http://gisdn.com" target="_blank">无码国产精品一区二区免费模式 </a>| <a href="http://szgyk.com" target="_blank">免费观看黄网站在线播放</a>| <a href="http://bbby6.com" target="_blank">59pao成国产成视频永久免费</a>| <a href="http://hidiaoyan.com" target="_blank">a级日本高清免费看</a>| <a href="http://66661660.com" target="_blank">久久最新免费视频</a>| <a href="http://xyxpx.com" target="_blank">免费精品久久天干天干</a>| <a href="http://fenglengqi.com" target="_blank">国产免费久久精品99久久</a>| <a href="http://sznsfe.com" target="_blank">一区二区三区视频免费观看</a>| <a href="http://xiaochidaquan.com" target="_blank">免费人成网站永久</a>| <a href="http://9ts9.com" target="_blank">中文字幕乱理片免费完整的</a>| <a href="http://zqsplc.com" target="_blank">中文在线观看永久免费</a>| <a href="http://apguangyu.com" target="_blank">91免费在线视频</a>| <a href="http://whxhjc.com" target="_blank">91久久精品国产免费直播</a>| <a href="http://lai228.com" target="_blank">久久天天躁狠狠躁夜夜免费观看</a>| <a href="http://hwjyrck.com" target="_blank">免费中文熟妇在线影片</a>| <a href="http://my94ok.com" target="_blank">成人免费无毒在线观看网站</a>| <a href="http://773311h.com" target="_blank">成人黄动漫画免费网站视频</a>| <a href="http://yinyinai155.com" target="_blank">免费一区二区三区四区五区</a>| <a href="http://lkzrgy.com" target="_blank">亚洲日本va中文字幕久久</a>| <a href="http://zhaosifuwang.com" target="_blank">精品无码一区二区三区亚洲桃色</a>| <a href="http://www65axax.com" target="_blank">亚洲第一二三四区</a>| <a href="http://www66susu.com" target="_blank">免费精品国自产拍在线播放 </a>| <a href="http://liexion.com" target="_blank">亚洲综合久久综合激情久久</a>| <a href="http://34007c.com" target="_blank">亚洲一线产品二线产品</a>| <a href="http://lawelites.com" target="_blank">久久久受www免费人成</a>| <a href="http://225ck.com" target="_blank">18女人水真多免费高清毛片</a>| <a href="http://96j6.com" target="_blank">免费观看四虎精品国产永久</a>| <a href="http://pencilinside.com" target="_blank">亚洲国产精品久久</a>| <a href="http://bdyls.com" target="_blank">九九免费观看全部免费视频</a>| <a href="http://ikybh.com" target="_blank">www.免费在线观看</a>| <a href="http://grjeans.com" target="_blank">亚洲日韩v无码中文字幕</a>| <a href="http://avxyz.com" target="_blank">亚洲国产精品99久久久久久</a>| <a href="http://huianpawn.com" target="_blank">精品亚洲永久免费精品</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>