JavaÉè¼ÆÄ£Ê½Ö®Facadeģʽ
JavaÉè¼ÆÄ£Ê½Ö®Facadeģʽ GOF¡¶Éè¼ÆÄ£Ê½¡·Ò»Êé¶ÔFacadeģʽÊÇÕâÑùÃèÊöµÄ:
¡¡¡¡Îª×ÓϵͳÖеÄÒ»×é½Ó¿ÚÌṩһ¸öͳһ½Ó¿Ú¡£Facadeģʽ¶¨ÒåÁËÒ»¸ö¸ü¸ß²ãµÄ½Ó¿Ú£¬Ê¹×Óϵͳ¸ü¼ÓÈÝÒ×ʹÓá£
¡¡¡¡´óÖÂÒâ˼ÊÇ˵£ºÊ¹ÓÃÒ»ÖÖ±ÈÔÓз½Ê½¸ü¼òµ¥µÄ°ì·¨Óëϵͳ½»»¥¡£ÀýÈ磬ÎÒÃǰÑÒ»¸öºÜÖØÒªµÄÎļþ£¬·ÅÔÚÁ˵ڶþ³éÌëÀ¶øµÚ¶þ¸ö³éÌëµÄÔ¿³×·ÅÔÚÁ˵ÚÒ»¸ö
³éÌëÀÎÒÃÇÒªÏëÈ¡³öÕâ¸öÎļþ£¬µÚÒ»²½¿Ï¶¨ÒªÄõ½µÚÒ»¸ö³éÌëµÄÔ¿³×£¬È»ºó´ò¿ªËüÔÙÄóöµÚ¶þ¸ö³éÌëµÄÔ¿³×£¬×îºó´ò¿ªµÚ¶þ¸ö³éÌëÈ¡³öÎļþ¡£
¡¡¡¡ÎÒ¾ÍÉÏÃæËµµÄÄǸöÇéÐÎдһÏÂʵÏÖ´úÂ룬Ê×ÏÈÎÒÃÇҪʵÏÖ¶þ¸ö×Óϵͳ,ºÇºÇ£¬°Ñ³éÌë±ÈÓ÷³Éϵͳ£¬Óеã¿äÕÅÁË£¨DrawerOne¡¢DrawerTwo£©£º
¡¡¡¡class DrawerOne {
¡¡¡¡public void open(){
¡¡¡¡System.out.println("µÚÒ»¸ö³éÌë±»´ò¿ªÁË");
¡¡¡¡getKey();
¡¡¡¡}
¡¡¡¡public void getKey(){
¡¡¡¡System.out.println("µÃµ½µÚ¶þ¸ö³éÌëµÄÔ¿³×");
¡¡¡¡}
¡¡¡¡}
¡¡¡¡class DrawerTwo{
¡¡¡¡public void open(){
¡¡¡¡System.out.println("µÚ¶þ¸ö³éÌë±»´ò¿ªÁË");
¡¡¡¡getFile();
¡¡¡¡}
¡¡¡¡public void getFile(){
¡¡¡¡System.out.println("µÃµ½Õâ¸öÖØÒªÎļþ");
¡¡¡¡}
¡¡¡¡}
¡¡¡¡public class Client{
¡¡¡¡public static void main(String []args){
¡¡¡¡DrawerOne darwerOne=new DrawerOne();
¡¡¡¡DrawerTwo darwerTwo=new DrawerTwo();
¡¡¡¡darwerOne.open();
¡¡¡¡darwerTwo.open();
¡¡¡¡}
¡¡¡¡}
ÓÉÓÚûÓÐʹÓÃFacadeģʽ£¬¿ÉÒÔ¿´µ½ÒªÏëµÃµ½Õâ¸öÎļþÒªÊ×ÏÈ´ò¿ªµÚÒ»¸ö³éÌ룬ȻºóÔÙ´ò¿ªµÚ¶þ¸ö³éÌ룬ÔÚÎÒÃÇʵ¼ÊËù¿ª·¢µÄϵͳÖУ¬ÓÐʱºò¿Í»§ÒªÊµ
ÏÖijһ²Ù×÷£¬²¢²»ÐèÒªÖªµÀʵÏÖÕâÒ»²Ù×÷µÄÏêϸ²½Ö裬¶øÊǼòµ¥µØµã»÷ijһ¸ö°´Å¥¾Í¿ÉÒԵõ½×Ô¼ºÏëÒªµÄ½á¹û¡£ÏÂÃæ¶ÔÉÏÃæµÄ´úÂëʹÓÃFacadeģʽ½øÐиĽø£¬
½¨Á¢Ò»¸öFacadeDrawerÀࣺ
¡¡¡¡class DrawerFacade{
¡¡¡¡DrawerOne darwerOne=new DrawerOne();
¡¡¡¡DrawerTwo darwerTwo=new DrawerTwo();
¡¡¡¡public void open(){
¡¡¡¡darwerOne.open();
¡¡¡¡darwerTwo.open();
¡¡¡¡}
¡¡¡¡}
¡¡¡¡ÐÞ¸ÄClientÀࣺ
¡¡¡¡public class DrawerClient{
¡¡¡¡public static void main(String []args){
¡¡¡¡DrawerFacade drawer=new DrawerFacade();
¡¡¡¡drawer.open();
¡¡¡¡}
¡¡¡¡}
¡¡¡¡Êä³ö½á¹ûÈçÏ£º
¡¡¡¡µÚÒ»¸ö³éÌë±»´ò¿ªÁË
¡¡¡¡µÃµ½µÚ¶þ¸ö³éÌëµÄÔ¿³×
¡¡¡¡µÚ¶þ¸ö³éÌë±»´ò¿ªÁË
Ïà¹ØÎĵµ£º
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®µÄ“ÈýÐֵܔ
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®³£ÓõÄÓÐÈý¸öÀࣺjava.lang.String¡¢java.lang.StringBuffer¡¢java.lang.StringBuilder£¬ÕâÈýÕߵĹ²Í¬Ö®´¦¶¼ÊÇfinalÀ࣬²»ÔÊÐí±»¼Ì³Ð£¬ÕâÖ÷ÒªÊÇ´ÓÐÔÄܺͰ²È«ÐÔÉÏ¿¼Âǵģ¬ÒòΪÕ⼸¸öÀà¶¼ÊǾ³£±»Ê¹ÓÃ×ŵģ¬ÇÒ¿¼Âǵ½·ÀÖ¹ÆäÖеIJÎÊý±»ÐÞ¸ÄÓ°Ïìµ½ÆäËüµÄÓ¦Óᣠ......
ת £ºhttp://kuru.javaeye.com/blog/288467
Java¶Ô¶àÏ̵߳ÄÖ§³ÖÓëͬ²½»úÖÆÉîÊÜ´ó¼ÒµÄϲ°®£¬Ëƺõ¿´ÆðÀ´Ê¹ÓÃÁËsynchronized¹Ø¼ü×־ͿÉÒÔÇáËɵؽâ¾ö¶àÏ̹߳²ÏíÊý¾Ýͬ²½ÎÊÌâ¡£µ½µ×ÈçºÎ£¿¨D¨D»¹µÃ¶Ôsynchronized¹Ø¼ü×ÖµÄ×÷ÓýøÐÐÉîÈëÁ˽â²Å¿É¶¨ÂÛ¡£ ×ܵÄ˵À´£¬synchronized¹Ø¼ü×Ö¿ÉÒÔ×÷Ϊº¯ÊýµÄÐÞÊηû£¬Ò²¿É×÷Ϊº¯ÊýÄÚµÄÓï¾ä£¬Ò ......
public static String byteToString(byte src)
{
String desc = null;
int i = 0; //È¡1¸ö×Ö½Ú
i = src&0xFF;
desc = Integer.toHexString(i);
if (desc.length() == 1)
......
³ÌÐòÖеıàÂë·ç¸ñÈÃÎÒÃǵıà³Ì¹¤×÷±äµÃÇáËÉ£¬ÌرðÊdzÌÐòά»¤Ô±£¬ËûÃÇÒª¾³£ÔĶÁÆäËûÈ˱àдµÄ³ÌÐò±àÂ룬ÕâÒ»µãÓÈÆäÍ»³ö¡£±àÂë¹æ·¶´Ó¸ù±¾ÉϽâ¾öÁ˳ÌÐòά»¤Ô±µÄÄÑÌ⣻¹æ·¶µÄ±àÂëÔĶÁºÍÀí½âÆðÀ´¸üÈÝÒ×£¬Ò²¿ÉÒÔ¿ìËٵIJ»·ÑÁ¦ÆøµÄ½è¼ø±ðÈ˵ıàÂë¡£¶Ô½«À´Î¬»¤Äã±àÂëµÄÈËÀ´Ëµ£¬ÄãµÄ±àÂëÔ½ÓÅ»¯£¬ËûÃǾÍԽϲ»¶ÄãµÄ±àÂ룬Àí½âÆðÀ´Ò²¾ÍÔ½ ......