ʹÓÃJAVA½¨Á¢Îȶ¨µÄ¶àÏ̷߳þÎñÆ÷
±¾ÎÄÏêϸµÄ½éÉÜÁËʹÓÃJavaÓïÑÔ½¨Á¢Ò»Ì×¶àÏ̷߳þÎñÆ÷µÄ¹ý³Ì£¬¸Ã·þÎñÆ÷ʹÓöÔÏó´«µÝÏûÏ¢£¬ÔÚÏß³ÌÖÐʹÓöÓÁлúÖÆ£¬Ê¹·þÎñÆ÷µÄÐÔÄÜ´ó´óÌá¸ßÁË¡£ÕâÌ×·þÎñÆ÷¿ÉÒÔ±»ÓÃÓÚ¸÷ÖÖC/S»òB/S½á¹¹µÄÓ¦ÓóÌÐòÖС£
JavaÓïÑÔÊÇÍêÈ«ÃæÏò¶ÔÏó
µÄ£¬ËüµÄÏ̻߳úÖÆºÍ¶ÔÏóÐòÁл¯ÌرðÈÝÒ×ʹÓã¬Ê¹ÓÃJavaÀ´½¨Á¢Ò»Ì×¶àÏ̷߳þÎñÆ÷Òª±ÈʹÓÃÆäËüÓïÑÔ·½±ãµÄ¶à£¬Èç¹ûÄãÔÙ°ÑËüµÄÒì³£´¦Àí»úÖÆÀûÓúã¬ÄÇôÄã¾Í
¿ÉÒÔ½¨Á¢Ò»¸öÉÌÒµ¼¶µÄ¶àÏ̷߳þÎñÆ÷ÁË¡£ÓÉÓÚ²ÉÓÃÁËÏûÏ¢¶ÓÁкÍSocket´«Ê䷽ʽ£¬ËùÒÔ²»»á³öÏÖ¶ªÏûÏ¢µÄÎÊÌâ¡£ÕâÌ×·þÎñÆ÷¿ÉÒÔ×÷ΪʵʱÁÄÌì·þÎñÆ÷¡¢¶àÈËÐ
ͬµÄÐ×÷·þÎñÆ÷µÈµÈ¡£
ÏûϢϵͳµÄ½¨Á¢
ÕâÌ×·þÎñÆ÷µÄÏûϢϵͳ²ÉÓõÄÊǶÔÏó´«ÊäµÄ»úÖÆ£¬¶ø²»ÊÇÒÔǰ³£³£Ê¹ÓõÄ×Ö·û´®´«Êä¡£²ÉÓöÔÏó´«ÊäµÄºÃ´¦ÊÇÀ©Õ¹·½±ã£¬ÈçÐèÒª½¨Á¢Ò»¸öеÄÏûÏ¢Ö»ÐèÒª´ÓÒ»¸öͳһµÄ»ùÀà¼Ì³ÐÏÂÀ´£¬È»ºóÔÙд×Ô¼ºÊµÏֵķ½·¨¾ÍÐÐÁË¡£ÕâÑùÒ²·ûºÏÃæÏò¶ÔÏóÁìÓòÀïÒ»ÌõÖØÒªµÄÔÔò£º
OCP(open_closed Principle)
£¬¼´Ò»¸öºÃµÄÉè¼ÆÓ¦¸ÃÄܹ»ÈÝÄÉÐµĹ¦ÄܵÄÔö¼Ó£¬µ«ÊÇÔö¼ÓµÄ·½Ê½²»ÊÇÐÞ¸ÄÔÓеÄÀ࣬¶øÊÇÌí¼ÓеÄÀà¡£
Ê×
ÏȽ¨Á¢Ò»¸ö»ùÀࣺMsg£¬¸Ã³éÏóÀàÖÐÓÐÁ½¸öÓòsenderºÍreceiver·Ö±ð¼Í¼ÏûÏ¢µÄ·¢ËÍÕߺͽÓÊÕÕß¡£ÕâÁ½¸öÓòÊÇÔÚ¹¹ÔìÏûÏ¢Ààʱ¾ÍÌîд
µÄ£¬receiverÓò¿ÉÒÔΪ¿Õ£¬¿Õ±íʾ·¢¸øË¶¼¿ÉÒÔ£¬ÓÉת·¢·þÎñÆ÷À´¾ö¶¨¡£¸ÃÀàµÄ·½·¨°üÀ¨È¡µÃÕâÁ½¸öÓòµÄÖµºÍÏûÏ¢µÄ´¦Àíº¯Êý¡£ÏûÏ¢µÄ´¦Àíº¯Êý
process()Êǿպ¯Êý£¬¹©¼Ì³ÐÕßÖØÔØ¡£
½¨Á¢ÁËÕâ¸ö³éÏó»ùÀàºó£¬Äã¾Í¿ÉÒԼ̳ÐËüÍê³ÉÄã×Ô¼ºµÄÀà¡£¾Ù¸öÀý×Ó£¬¼ÙÈçÎÒÒª½¨Á¢Ò»¸ö·Ö×éÐͬ¹¤×÷µÄ»æÍ¼ÏµÍ³£¬¶øÇÒÖ§³Ö×éÔ±Ö®¼äµÄ¶Ô»°£¬ÄÇôÎÒ¿ÉÒÔ½¨Á¢ÈçϵÄÀ༯ºÏ£º
SendTextMsg(String sender,String receiver,String info)//ÏòÖ¸¶¨µÄÈË·¢ËͶԻ°¡£
AddLineMsg(String sender,Point a,Point b)//ÔÚÖ¸¶¨µÄµãÖ®¼ä»æÖÆÒ»ÌõÖ±Ïß
AddRectangle(String sender,point start,Point end)//½¨Á¢Ö¸¶¨µÄ¾ØÐÎ
AddRotundaMsg(String sender,Point center,int radius)//½¨Á¢Ö¸¶¨µÄÔ²
RemoveObjectMsg(String sender,int ID)//ɾ³ýÖ¸¶¨±àºÅµÄͼÐζÔÏó
……
ÒÔ´ËÀàÍÆ£¬¿ÉÒÔ½¨Á¢ºÜ¶àµÄÏûÏ¢Àà¡£ÔÚÿ¸öÀàµÄÄÚ²¿¶¼ÓÉÒ»¸ö´¦Àí¸ÃÀàµÄ·½·¨process()£¬Ìîд¸Ã·½·¨¾Í¿ÉÒÔʵÏÖ¶ÔÏûÏ¢ÀàµÄ´¦Àí£¬¶ø·þÎñÆ÷Ö»¸ºÔðÍê³ÉÏûÏ¢µÄת·¢¹¦ÄÜ¡£ÕâÑù£¬Ò»Ì×ÏûϢϵͳ¾Í½¨Á¢ÁË¡£
»ØÒ³Ê×
·þÎñÆ÷µÄ½á¹¹
Èç¹ûÒª·þÎñÆ÷ʵÏÖͬʱΪÿ¸ö¿Í»§¶Ë
Ïà¹ØÎĵµ£º
Èý¸öѧÉúµ½Ò»¸öË®ÁúÍ·ÏÂÅŶÓȡˮ£¬ÈýÈ˶¼È¡ÍêË®ºóÒ»ÆðÀ뿪¡£
ÕâÀïÉæ¼°µ½ÈçºÎÅжÏÈý¸öÈ˶¼È¡ÍêË®¡£Èç¹ûÓÃÆÕͨµÄ¾²Ì¬³ÉÔ±£¬ÊƱػáÒªÓÃÎÞÏÞÑ»·À´µÈ´ý¡£¸üºÃµÄ°ì·¨ÊÇÓà wait-notify »úÖÆ¡£Ç°Á½¸öѧÉúÈ¡ÍêË®ºó¶¼ wait£¬×îºóÒ»¸öѧÉúÈ¡ÍêË®ºó notify£¬ÕâÑù¾ÍÄÜÒ»ÆðÀ뿪ÁË¡£ÏÂÃæÊÇ´úÂëʾÀý£º
/**
* Èý¸öѧÉúÅŶÓȡˮ£¬È¡ÍêºóÒ ......
/*import javax.swing.JFrame;*/
/*import javax.swing.JOptionPane;*/
public class TestFrame{
public static void main(String[] args) throws Exception{
/*JFrame frame1 = new JFrame();
frame1.setTitle("Windows 1");
frame1.setSize(200,150);
frame1.setLocation(200,100);
frame1.setD ......
javaÖÐÏà¶Ô·¾¶£¬¾ø¶Ô·¾¶ÎÊÌâ×ܽá
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡————bohemia(³Ç)
ǰÑÔ£º
ǰһ¶Îʱ¼ä£¬ÓÉÓÚÔÚ´¦ÀíWebÓ¦ÓÃϵÄÎļþ´´½¨ÓëÒÆ¶¯µÈ£¬Òò´ËÉæ¼°µ½ºÜ¶à¹ØÓÚjava
ÖÐÏà¶Ô·¾¶£¬¾ø¶Ô·¾¶µÈÎÊÌ⡣ͬʱ£¬¶ÔÓÚWebÓ¦ÓÃÖеÄÏà¶Ô·¾¶£¬¾ø¶Ô·¾¶£¬ÒÔ¼°Java.io.File
ÀàѧϰÁËһϡ ......
ÁªÍ¨£º³¹µ×·ÅÆúORÓûÇܹÊ×Ý£¿
ÒµÄÚÈÕǰ´«³öÏûÏ¢£¬ÓÉÓÚÆ»¹û¼á³Ö·Ö³Éģʽ£¬ÁªÍ¨¸ß²ã¶ÔÓÚÒýÈëÆ»¹û̬¶ÈÒÑÎÞÔçÏȼá¾ö¡£“Ëæ×ÅÊÖ»úµÄ²»¶Ï¸üл»´ú£¬Ò»µãÓпÉÄܰüº¬µÄ¹¦ÄÜÌØ±ðÊÇÁªÍ¨¼ÓÈë¹È¸è¿ª·ÅÊÖ»úÁªÃË£¬ÔÚÊý¾Ý±£»¤ºÍ¼á¹ÌÐ×÷¼Æ»®ÍÆ×ÔÓпª·Å²Ù×÷ƽ̨ÊÖ»ú£¬ÔÚÊý¾Ý±£»¤ºÍ¼á¹ÌÐ×÷ javaµç×ÓÊéÃâ·ÑÏÂÔØiPhoneÔÚÆäÕ½ÂÔÖ ......
¶ÓÁÐÊÇÉè¼Æ³ÌÐòÖг£ÓõÄÒ»ÖÖÊý¾Ý½á¹¹¡£ËüÀàËÆÈÕ³£Éú»îÖеÄÅŶÓÏÖÏ󣬲ÉÓÃÒ»ÖÖ±»³ÆÎª
“ÏȽøÏȳö”(FIFO)µÄ´æ´¢½á¹¹¡£Êý¾ÝÔªËØÖ»ÄÜ´Ó¶Óβ½øÈ룬´Ó¶ÓÊ×È¡³ö¡£ÔÚ¶ÓÁÐÖУ¬
Êý¾ÝÔªËØ¿ÉÒÔÈÎÒâÔö¼õ£¬µ«Êý¾ÝÔªËØµÄ´ÎÐò²»»á¸Ä±ä¡£Ã¿µ±ÓÐÊý¾ÝÔªËØ´Ó¶ÓÁÐÖб»È¡³ö£¬
ºóÃæµÄÊý¾ÝÔªËØÒÀ´ÎÏòÇ°ÒÆ¶¯Ò»Î»¡£ËùÒÔ£¬ÈκÎʱºò ......