·´Ïò¿ØÖÆ Inversion of Control(JAVA Application)
Android_1.0_eBook_by_tom_kao_2008_10_15.pdf
¡¶AndroidÓ¦Óÿò¼ÜÔÀíÓë³ÌÐòÉè¼Æ36¼¼¡·
±¾書ÍêÕû範例³Ìʽ碼請µ½網Õ¾ÏÂ載:
www.misoo1.com »ò tom-kao.blogspot.com
¸ß煥ÌÃ Öø(2008 年10 ÔµÚÈý°æ)
misoo.tw@gmail.com
·´Ïò¿ØÖÆ(Inversion of Control)
當×Ó類別繼³Ð¸¸類別時£¬¸¸類別Ö®º¯數¿ÉÒÔºô½Ð×Ó類別Ö®º¯數¡£雖È»¸¸類別(ǰ輩)誕Éú時£¬×Ó類別(Íí輩)³£³£ÉÐδ誕Éú﹔µ«ÊÇǰ輩ÓÐ時ºò¿É預ÖªÍí輩Öеĺ¯數£¬¾Í¿Éºô½ÐËü¡£
¿ò¼Ü裡µÄ³éÏó類別¾ÍÊǰçÑݸ¸類別µÄ½ÇÉ«£¬Ö»ÊǺ¬ÓÐһЩ陽´ºÐÍ(³éÏóµÄ)µÄ類別£¬ÆäÌṩºÜͨÓ㬵«不ÍêÕûµÄº¯數£¬ÊÇ設計師¿ÌÒâ留給應ÓóÌʽµÄ×Ó類別來補³äµÄ¡£Ò»µ©補³äÍê³É£¬¿ò¼Ü裡µÄ¸¸類別µÄº¯數¾Í¿ÉÒÔ¡¸·´Ïòºô½Ð¡¹×Ó類別裡µÄº¯數了¡£
2.2.2.1 ÒÔÒ»°ãJava ³Ìʽ為例
例È磺ÓÐ了Ò»個繪圖µÄShape ¸¸類別£º
// Shape.java
package framework;
public class Shap{
public void paint() { this.onDraw(); }
public abstract void onDraw();
}
設計Õß預ÆÚ×Ó類別將會¶¨義Ò»個Draw()º¯數£¬ì¶ÊÇ讓Paint()ºô½Ð×Ó類別µÄDraw()º¯數¡£ì¶ÊÇ×Ó類別(Íí輩)ÌṩDraw()給¸¸類別(ǰ輩)來ºô½ÐÖ®£¬ÈçÏ£º
//Cicrle.java
package _objects;
import java.awt.Color;
import java.awt.Graphics;
import _framework.*;
public class Circle extends Shape {
private Graphics m_gr;
private int x, y, radius;
public Circle(Graphics gr) { m_gr = gr; }
public void Se
Ïà¹ØÎĵµ£º
JavaỊ̈߳ºÐÂÌØÕ÷-ÐźÅÁ¿
JavaµÄÐźÅÁ¿Êµ¼ÊÉÏÊÇÒ»¸ö¹¦ÄÜÍê±ÏµÄ¼ÆÊýÆ÷£¬¶Ô¿ØÖÆÒ»¶¨×ÊÔ´µÄÏû·ÑÓë»ØÊÕÓÐןÜÖØÒªµÄÒâÒ壬ÐźÅÁ¿³£³£ÓÃÓÚ¶àÏ̵߳ĴúÂëÖУ¬²¢ÄÜ¼à¿ØÓжàÉÙÊýÄ¿µÄÏ̵߳ȴý»ñÈ¡×ÊÔ´£¬²¢ÇÒͨ¹ýÐźÅÁ¿¿ÉÒÔµÃÖª¿ÉÓÃ×ÊÔ´µÄÊýÄ¿µÈµÈ£¬ÕâÀï×ÜÊÇÔÚÇ¿µ÷“ÊýÄ¿”¶þ×Ö£¬µ«²»ÄÜÖ¸³öÀ´ÓÐÄÄЩÔڵȴý£¬ÄÄЩ×ÊÔ ......
JavaỊ̈߳ºÐÂÌØÕ÷-Ìõ¼þ±äÁ¿
Ìõ¼þ±äÁ¿ÊÇJava5Ïß³ÌÖкÜÖØÒªµÄÒ»¸ö¸ÅÄ¹ËÃû˼Ò壬Ìõ¼þ±äÁ¿¾ÍÊDZíʾÌõ¼þµÄÒ»ÖÖ±äÁ¿¡£µ«ÊDZØÐë˵Ã÷£¬ÕâÀïµÄÌõ¼þÊÇûÓÐʵ¼Êº¬ÒåµÄ£¬½ö½öÊǸö±ê¼Ç¶øÒÑ£¬²¢ÇÒÌõ¼þµÄº¬ÒåÍùÍùͨ¹ý´úÂëÀ´¸³ÓèÆäº¬Òå¡£
ÕâÀïµÄÌõ¼þºÍÆÕͨÒâÒåÉϵÄÌõ¼þ±í´ïʽÓÐ×ÅÌìÈÀÖ®±ð¡£
Ìõ¼þ±äÁ¿¶¼ÊµÏÖÁË ......
Java Éú³É EXCEL POIÎĵµËµÃ÷
POI°æ±¾:3.0.2-FINAL
ÏÂÔØµØÖ·: http://poi.apache.org/index.html
Ò»°ãÔÚÏîÄ¿ÖÐÕæÕýҪʵÏÖÕâÑùÒ»¸ö±í¸ñµÄʱºò£¬ÀýÈçÏîÄ¿ÐèÒªÖÆ×÷±¨±íµÈµÈ£¬Í¨³£µÄ×ö·¨¶¼ÊÇÊÂÏȰѸñʽһÇеĶ«Î÷¶¼ÊÖ¶¯ÖÆ×÷ºÃ£¨Õâ¸ö×öºÃÁ˵ÄÎļþÔÚʵ¼ÊµÄÏîÄ¿ÀïÎÒÃdzÆÖ®Îª“Êý¾ÝÄ£°å”£¬¼ò³Æ“Ä£°å&rd ......
ÊäÈëÊä³öÁ÷
ÔÚJavaÖУ¬ÎÒÃǰÑÄܹ»¶Áȡһ¸ö×Ö½ÚÐòÁеĶÔÏó³Æ×÷Ò»¸öÊäÈëÁ÷;¶øÎÒÃǰѹ»Ð´Ò»¸ö×Ö½ÚÐòÁгÆ×÷Ò»¸öÊä³öÁ÷¡£ËüÃÇ·Ö±ðÓɳéÏóÀà InputStreamºÍOutputStreamÀà±íʾ¡£ÒòÎªÃæÏò×Ö½ÚµÄÁ÷²»·½±ãÓÃÀ´´¦Àí´æ´¢ÎªUnicode£¨Ã¿¸ö×Ö·ûʹÓÃÁ½¸ö×Ö½Ú)µÄÐÅÏ¢¡£ËùÒÔJavaÒýÈëÁËÓÃÀ´´¦ÀíUnicode×Ö·ûµÄÀà²ã´Î£¬ÕâЩÀàÅÉÉú×Ô³éÏóÀàReade ......
synchronized£º ͬ²½µÄ
synchronizedÔÚ²Ù×÷ÉÏÓÐÁ½ÖÖÓ°Ïì¶ÔÏóµÄÇé¿ö£º
1) ÔÚij¸ö¶ÔÏóʵÀýÄÚ£¬synchronized method(){}¿ÉÒÔ·ÀÖ¹¶à¸öÏß³Ìͬʱ·ÃÎÊÕâ¸ö¶ÔÏóµÄsynchronized·½·¨£¨Èç¹ûÒ»¸ö¶ÔÏóÓжà¸ösynchronized·½·¨£¬Ö»ÒªÒ»¸öÏ̷߳ÃÎÊÁËÆäÖеÄÒ»¸ösynchronized·½·¨£¬ÆäËüÏ̲߳»ÄÜͬʱ·ÃÎÊÕâ¸ö¶ÔÏóÖÐÈκÎÒ»¸ösynchronized·½·¨£ ......