javaÉè¼ÆÄ£Ê½_Compositeģʽ
Compositeģʽ(×éºÏ)
JavaÉîÈëµ½Ò»¶¨³Ì¶È,¾Í²»¿É±ÜÃâµÄÅöµ½Éè¼ÆÄ£Ê½ÕâÒ»¸ÅÄî,Á˽âÉè¼ÆÄ£Ê½,½«Ê¹×Ô¼º¶ÔjavaÖеĽӿڻò³éÏóÀàÓ¦ÓÃÓиüÉîµÄÀí½â.Éè¼ÆÄ£Ê½ÔÚjavaµÄÖÐÐÍϵͳÖÐÓ¦Óù㷺,×ñÑÒ»¶¨µÄ±à³Ìģʽ,²ÅÄÜʹ×Ô¼ºµÄ´úÂë±ãÓÚÀí½â,Ò×ÓÚ½»Á÷,Composite(×éºÏģʽ)ģʽÊDZȽϳ£ÓõÄÒ»¸öģʽ.
Composite×éºÏģʽ£¬½«¶ÔÏóÒÔÊ÷Ðνṹ×éÖ¯ÆðÀ´,ÒÔ´ï³É“²¿·Ö£ÕûÌå” µÄ²ã´Î½á¹¹£¬Ê¹µÃ¿Í»§¶Ë¶Ôµ¥¸ö¶ÔÏóºÍ×éºÏ¶ÔÏóµÄʹÓþßÓÐÒ»ÖÂÐÔ¡£
Óŵã: 1.ʹ¿Í»§¶Ëµ÷Óüòµ¥£¬¿Í»§¶Ë¿ÉÒÔÒ»ÖµÄʹÓÃ×éºÏ½á¹¹»òÆäÖе¥¸ö¶ÔÏó£¬Óû§¾Í²»±Ø¹ØÏµ×Ô¼º´¦ÀíµÄÊǵ¥¸ö¶ÔÏó»¹ÊÇÕû¸ö×éºÏ½á¹¹£¬Õâ¾Í¼ò»¯Á˿ͻ§¶Ë´úÂë¡£
2.¸üÈÝÒ×ÔÚ×éºÏÌåÄÚ¼ÓÈë¶ÔÏ󲿼þ. ¿Í»§¶Ë²»±ØÒòΪ¼ÓÈëÁËеĶÔÏ󲿼þ¶ø¸ü¸Ä´úÂë¡£
ÔÚ´ËдÁË6¸öjavaÀàÀ´ÃèÊö˵Ã÷CompositeÉè¼ÆÄ£Ê½µÄʵÏÖ·½Ê½£»
1¡¢ Circle.java ²¿¼þ-Ô²
2¡¢ Graph.java ²¿¼þ-³éÏóÀà
3¡¢ Line.java ²¿¼þ-Ïß
4¡¢ Picture.java ²¿¼þ-ͼ
5¡¢ Rectangle.java ²¿¼þ-·½
6¡¢ PictureTest.java ´øÓÐmain·½·¨µÄ²âÊÔÀà
=============== 1¡¢ Circle.java
package composite;
//²¿¼þ-Ô²
public class Circle extends Graph {
public void draw() {
System.out.println("Draw a circle.");
}
}
=============== 1 end
=============== 2¡¢ Graph.java
package composite;
import java.util.Iterator;
//²¿¼þ-³éÏóÀà
public abstract class Graph{
//»Í¼
public abstract void draw();
//Ôö¼ÓÒ»¸öͼÐÎ
public void add(Graph g){};
//ɾ³ýÒ»¸öͼÐÎ×é¼þ
public void remove(Graph g){};
//»ñµÃ×éºÏÌåµÄÄÚ²¿²¿¼þ
public Iterator<Graph> iter(){return null;};
}
=============== 2 end
=============== 3¡¢ Line.java
package composite;
//²¿¼þ-Ïß
public class Line extends Graph {
public void draw() {
System.out.p
Ïà¹ØÎĵµ£º
JavaỊ̈߳º²¢·¢Ð×÷-ËÀËø
Ï̷߳¢ÉúËÀËø¿ÉÄÜÐÔºÜС£¬¼´Ê¹¿´ËÆ¿ÉÄÜ·¢ÉúËÀËøµÄ´úÂ룬ÔÚÔËÐÐʱ·¢ÉúËÀËøµÄ¿ÉÄÜÐÔÒ²ÊÇС֮ÓÖС¡£
·¢ÉúËÀËøµÄÔÒòÒ»°ãÊÇÁ½¸ö¶ÔÏóµÄËøÏ໥µÈ´ýÔì³ÉµÄ¡£
ÔÚ¡¶JavaỊ̈߳ºÏ̵߳Äͬ²½ÓëËø¡·Ò»ÎÄÖУ¬¼òÊöËÀËøµÄ¸ÅÄîÓë¼òµ¥Àý×Ó£¬µ«ÊÇËù¸øµÄÀý×ÓÊDz»ÍêÕûµÄ£¬ÕâÀï¸ø³öÒ»¸öÍêÕûµÄÀ ......
JavaỊ̈߳ºvolatile¹Ø¼ü×Ö
Java™ ÓïÑÔ°üº¬Á½ÖÖÄÚÔÚµÄͬ²½»úÖÆ£ºÍ¬²½¿é£¨»ò·½·¨£©ºÍ volatile ±äÁ¿¡£ÕâÁ½ÖÖ»úÖÆµÄÌá³ö¶¼ÊÇΪÁËʵÏÖ´úÂëÏ̵߳ݲȫÐÔ¡£ÆäÖÐ Volatile ±äÁ¿µÄͬ²½ÐԽϲµ«ÓÐʱËü¸ü¼òµ¥²¢ÇÒ¿ªÏú¸üµÍ£©£¬¶øÇÒÆäʹÓÃÒ²¸üÈÝÒ׳ö´í¡£
̸¼°µ½volatile¹Ø¼ü×Ö£¬²»µÃ²»ÌáµÄһƪÎÄÕÂÊÇ£º¡¶Java ......
JavaỊ̈߳ºÐÂÌØÕ÷-Óзµ»ØÖµµÄÏß³Ì
ÔÚJava5֮ǰ£¬Ïß³ÌÊÇûÓзµ»ØÖµµÄ£¬³£³£ÎªÁË“ÓД·µ»ØÖµ£¬ÆÆ·ÑÖÜÕÛ£¬¶øÇÒ´úÂëºÜ²»ºÃд¡£»òÕ߸ɴàÈÆ¹ýÕâµÀ¿²£¬×ß±ðµÄ·ÁË¡£
ÏÖÔÚJavaÖÕÓÚÓпɷµ»ØÖµµÄÈÎÎñ£¨Ò²¿ÉÒÔ½Ð×öỊ̈߳©ÁË¡£
¿É·µ»ØÖµµÄÈÎÎñ±ØÐëʵÏÖCallable½Ó¿Ú£¬ÀàËÆµÄ£¬ÎÞ·µ»ØÖµµÄÈÎÎñ±ØÐëRu ......
JavaỊ̈߳ºÐÂÌØÕ÷-Ëø£¨Ï£©
ÔÚÉÏÎÄÖÐÌáµ½ÁËLock½Ó¿ÚÒÔ¼°¶ÔÏó£¬Ê¹ÓÃËü£¬ºÜÓÅÑŵĿØÖÆÁ˾ºÕù×ÊÔ´µÄ°²È«·ÃÎÊ£¬µ«ÊÇÕâÖÖËø²»Çø·Ö¶Áд£¬³ÆÕâÖÖËøÎªÆÕÍ¨Ëø¡£ÎªÁËÌá¸ßÐÔÄÜ£¬JavaÌṩÁ˶ÁÐ´Ëø£¬ÔÚ¶ÁµÄµØ·½Ê¹ÓöÁËø£¬ÔÚдµÄµØ·½Ê¹ÓÃÐ´Ëø£¬Áé»î¿ØÖÆ£¬ÔÚÒ»¶¨³Ì¶ÈÉÏÌá¸ßÁ˳ÌÐòµÄÖ´ÐÐЧÂÊ¡£
JavaÖжÁÐ´ËøÓиö½Ó¿Újava ......
JavaỊ̈߳ºÐÂÌØÕ÷-ÐźÅÁ¿
JavaµÄÐźÅÁ¿Êµ¼ÊÉÏÊÇÒ»¸ö¹¦ÄÜÍê±ÏµÄ¼ÆÊýÆ÷£¬¶Ô¿ØÖÆÒ»¶¨×ÊÔ´µÄÏû·ÑÓë»ØÊÕÓÐןÜÖØÒªµÄÒâÒ壬ÐźÅÁ¿³£³£ÓÃÓÚ¶àÏ̵߳ĴúÂëÖУ¬²¢ÄÜ¼à¿ØÓжàÉÙÊýÄ¿µÄÏ̵߳ȴý»ñÈ¡×ÊÔ´£¬²¢ÇÒͨ¹ýÐźÅÁ¿¿ÉÒÔµÃÖª¿ÉÓÃ×ÊÔ´µÄÊýÄ¿µÈµÈ£¬ÕâÀï×ÜÊÇÔÚÇ¿µ÷“ÊýÄ¿”¶þ×Ö£¬µ«²»ÄÜÖ¸³öÀ´ÓÐÄÄЩÔڵȴý£¬ÄÄЩ×ÊÔ ......