²©Ñ§¹È¡ª¡ªÈÃIT½Ìѧ¸ü¼òµ¥£¬ÈÃITѧϰ¸üÓÐЧ
}
}
jframe.setSize(150, 200); jframe.setVisible(true);
Îå¡¢¼ò´ðÌâ¡£
1¡¢Çë¼òÊöGUIÖÐʵÏÖʼþ¼àÌýµÄ²½Öè¡£ 2¡¢AWTºÍSwingµÄÇø±ð Áù¡¢±à³ÌÌâ
1¡¢±àдһ¸öJFrame´°¿Ú£¬ÒªÇóÈçÏ£º
1£©ÔÚ´°¿ÚµÄ×îÉÏ·½·ÅÖÃÒ»¸öJLabel±êÇ©£¬±êÇ©ÖÐĬÈϵÄÎı¾ÊÇ¡°´Ë´¦ÏÔʾÊó±êÓÒ¼üµã»÷µÄ×ø±ê¡± 2£©ÎªJFrame´°¿ÚÌí¼ÓÒ»¸öÊó±êʼþ£¬µ±Êó±êÓÒ¼üµã»÷´°¿Úʱ£¬Êó±êµÄ×ø±êÔÚJLabel±êÇ©ÖÐÏÔʾ 2¡¢±àдһ¸öJFrame´°¿Ú£¬ÒªÇóÈçÏ£º
1£©´°¿ÚÖеÄNORTHÇøÓòÖзÅÖÃÒ»¸öJPanelÃæ°å 2£©JPanelÃæ°åÖдÓ×óµ½ÓÒÒÀ´Î·ÅÖÃÈçÏÂ×é¼þ£º JLabel±êÇ©£¬±êÇ©µÄÎı¾Îª¡°ÐËȤ¡±
Èý¸öJCheckBox¶àÑ¡°´Å¥£¬Îı¾·Ö±ðΪ¡°ÓðëÇò¡±¡¢¡°Æ¹ÅÒÇò¡±¡¢¡°³ª¸è¡± JLabel±êÇ©£¬±êÇ©µÄÎı¾Îª¡°ÐÔ±ð¡±
Á½¸öJRadioButton°´Å¥£¬Îı¾·Ö±ðΪ¡°ÄС±¡¢¡°Å®¡±
3£©´°¿ÚµÄCENTERÇøÓò·ÅÖÃÒ»¸öJScrollPaneÈÝÆ÷£¬ÈÝÆ÷ÖзÅÖÃÒ»¸öJTextAreaÎı¾Óò 4£©µ±µã»÷¶àÑ¡°´Å¥ºÍµ¥Ñ¡°´Å¥Ê±£¬»á°ÑÑ¡Öа´Å¥µÄÎı¾ÏÔʾÔÚJTextAreaÎı¾ÓòÖС£
3¡¢±àдһ¸öJFrame´°¿Ú£¬ÒªÇóÈçÏ£º
1£©´°¿Ú°üº¬Ò»¸ö²Ëµ¥À¸ºÍÒ»¸öJLabel±êÇ©¡£
2£©²Ëµ¥À¸ÖÐÓÐÁ½¸ö²Ëµ¥£¬µÚÒ»¸ö²Ëµ¥ÓÐÁ½¸ö²Ëµ¥ÏËüÃÇÖ®¼äÓ÷ָô·û·Ö¿ª£¬µÚ¶þ¸ö²Ëµ¥ÓÐÒ»¸ö
²Ëµ¥Ïî¡£
3£©JLabel±êÇ©·ÅÖÃÔÚ´°¿ÚµÄÖмä(¼´BorderLayout.CENTER)£¬µ±µã»÷²Ëµ¥ÏîµÄʱºò£¬²Ëµ¥ÏîÖеÄ
Îı¾ÏÔʾµÄJLabel±êÇ©ÖС£
µÚ10ÕÂ ÍøÂç±à³Ì
Ò»¡¢Ìî¿ÕÌâ
1¡¢TCPÐÒéµÄÌØµãÊÇ £¬¼´ÔÚ´«ÊäÊý¾ÝǰÏÈÔÚ ºÍ ½¨Á¢Âß¼Á¬½Ó¡£
2¡¢ÔÚ¼ÆËã»úÖУ¬¶Ë¿ÚºÅÊÇÓà ×Ö½Ú£¬Ò²¾ÍÊÇ16λµÄ¶þ½øÖÆÊý±íʾ£¬ËüµÄȡֵ·¶Î§ÊÇ ¡£ 3¡¢TCP/IPÐÒé±»·ÖΪËĸö²ã£¬·Ö±ðÊÇ ¡¢ ¡¢ ¡¢ ¡£
4¡¢ÔÚJDKÖУ¬IPµØÖ·Óà ÀàÀ´±íʾµÄ£¬¸ÃÀàÌṩÁËÐí¶àºÍIPµØÖ·Ïà¹ØµÄ²Ù×÷¡£¡£ 5¡¢Ê¹ÓÃUDPÐÒ鿪·¢ÍøÂç³ÌÐòʱ£¬ÐèҪʹÓÃÁ½¸öÀ࣬·Ö±ðÊÇ ºÍ ¡£ ¶þ¡¢ÅжÏÌâ
1¡¢ÓÉÓÚUDPÊÇÃæÏòÎÞÁ¬½ÓµÄÐÒ飬¿ÉÒÔ±£Ö¤Êý¾ÝµÄÍêÕûÐÔ£¬Òò´ËÔÚ´«ÊäÖØÒªÊý¾Ýʱ½¨ÒéʹÓÃUDPÐÒé¡£
2¡¢ÔÚÍøÂçͨÐÅÖУ¬¶ÔÊý¾Ý´«Êä¸ñʽ¡¢´«ÊäËÙÂÊ¡¢´«Êä²½ÖèµÈ×÷ÁËͳһ¹æ¶¨£¬Ö»ÓÐͨÐÅË«·½¹²Í¬×ñÊØÕâ¸ö¹æ¶¨²ÅÄÜÍê³ÉÊý¾ÝµÄ½»»¥£¬ÕâÖֹ涨³ÆÎªÍøÂç´«ÊäÐÒé¡£
3¡¢ÔÚ´´½¨·¢ËͶ˵ÄDatagramPacket¶ÔÏóʱ£¬ÐèÒªÖ¸¶¨·¢ËͶ˵ÄÄ¿±êIPµØÖ·ºÍ¶Ë¿ÚºÅ¡£ 4¡¢IPv4°æ±¾µÄIPµØÖ·Ê¹ÓÃ4¸ö×Ö½ÚÀ´±íʾ£¬IPv6°æ±¾µÄIPµØÖ·Ê¹ÓÃ8¸ö×Ö½ÚÀ´±íʾ¡£ 5¡¢Ê¹ÓÃTCPÐÒéͨÐÅʱ£¬Í¨ÐŵÄÁ½¶ËÒÔIOµÄ·½Ê½½øÐÐÊý¾ÝµÄ½»»¥¡£
²©Ñ§¹È¡ª¡ªÈÃIT½Ìѧ¸ü¼òµ¥£¬ÈÃITѧϰ¸üÓÐЧ
Èý¡¢Ñ¡ÔñÌâ
1¡¢Ê¹ÓÃUDPÐÒéͨÐÅʱ£¬ÐèҪʹÓÃÄĸöÀà°ÑÒª·¢Ë͵ÄÊý¾Ý´ò°ü£¿
A¡¢Socket B¡¢DatagramSocket C¡¢DatagramPacket D¡¢ServerSocket 2¡¢ÒÔÏÂÄĸöÊÇserverSocketÀàÓÃÓÚ½ÓÊÕÀ´×Ô¿Í»§¶ËÇëÇóµÄ·½·¨£¿ A¡¢accept() B¡¢getOutputStream() C¡¢receive() D¡¢get() 3¡¢ÒÔÏÂ˵·¨ÄÄЩÊÇÕýÈ·µÄ£¿£¨¶àÑ¡£©
A¡¢TCPÁ¬½ÓÖбØÐëÒªÃ÷È·¿Í»§¶ËÓë·þÎñÆ÷¶Ë¡£
B¡¢TCPÐÒéÊÇÃæÏòÁ¬½ÓµÄͨÐÅÐÒ飬ËüÌṩÁËÁ½Ì¨¼ÆËã»úÖ®¼ä¿É¿¿ÎÞ²î´íµÄÊý¾Ý´«Êä¡£ C¡¢UDPÐÒéÊÇÃæÏòÎÞÁ¬½ÓµÄÐÒ飬¿ÉÒÔ±£Ö¤Êý¾ÝµÄÍêÕûÐÔ¡£
D¡¢UDPÐÒéÏûºÄ×ÊԴС£¬Í¨ÐÅЧÂʸߣ¬Í¨³£±»ÓÃÓÚÒôƵ¡¢ÊÓÆµºÍÆÕͨÊý¾ÝµÄ´«Êä¡£ 4¡¢ÒÔÏÂÄĸöÀàÓÃÓÚʵÏÖTCPͨÐŵĿͻ§¶Ë³ÌÐò£¿ A¡¢ServerSocket B¡¢Socket C¡¢Client D¡¢Server
5¡¢½øÐÐUDPͨÐÅʱ£¬ÔÚ½ÓÊÕ¶ËÈôÒª»ñµÃ·¢ËͶ˵ÄIPµØÖ·£¬¿ÉÒÔʹÓÃDatagramPacketµÄÄĸö·½·¨£¿ A¡¢getAddress() B¡¢getPort() C¡¢getName() D¡¢getData() 6¡¢ÒÔÏÂÄĸö·½·¨ÊÇDatagramSocketÀàÓÃÓÚ·¢ËÍÊý¾ÝµÄ·½·¨£¿ A¡¢receive() B¡¢accept() C¡¢set() D¡¢send()
7¡¢ÔÚ³ÌÐòÔËÐÐʱ£¬DatagramSocketµÄÄĸö·½·¨»á·¢Éú×èÈû£¿ A¡¢send() B¡¢receive() C¡¢close() D¡¢connect() 8¡¢TCPÐÒéµÄ¡°Èý´ÎÎÕÊÖ¡±ÖУ¬µÚÒ»´ÎÎÕÊÖÖ¸µÄÊÇʲô£¿ A¡¢¿Í»§¶ËÔÙ´ÎÏò·þÎñÆ÷¶Ë·¢ËÍÈ·ÈÏÐÅÏ¢£¬È·ÈÏÁ¬½Ó¡£
B¡¢·þÎñÆ÷¶ËÏò¿Í»§¶Ë»ØËÍÒ»¸öÏìÓ¦£¬Í¨Öª¿Í»§¶ËÊÕµ½ÁËÁ¬½ÓÇëÇó¡£ C¡¢¿Í»§¶ËÏò·þÎñÆ÷¶Ë·¢³öÁ¬½ÓÇëÇ󣬵ȴý·þÎñÆ÷È·ÈÏ¡£ D¡¢ÒÔÉÏ´ð°¸È«²¿´íÎó
ËÄ¡¢¼ò´ðÌâ
1¡¢ÍøÂçͨÐÅÐÒéÊÇʲô£¿
2¡¢TCPÐÒéºÍUDPÐÒéÓÐÊ²Ã´Çø±ð£¿
3¡¢SocketÀàºÍServerSocketÀà¸÷ÓÐʲô×÷Óã¿ Îå¡¢±à³ÌÌâ
Çë°´ÕÕÌâÄ¿µÄÒªÇó±àд³ÌÐò²¢¸ø³öÔËÐнá¹û¡£
1¡¢ ʹÓÃInetAddressÀà»ñÈ¡±¾µØ¼ÆËã»úµÄIPµØÖ·ºÍÖ÷»úÃû£¬¼×¹ÇÎĹ«Ë¾(www.oracle.com)Ö÷»úµÄIPµØ
Ö·¡£ Ìáʾ£º
1£©Í¨¹ýInetAddress.getLocalHost();»ñÈ¡±¾µØ¼ÆËã»úµÄInetAddress¶ÔÏó
2£©Í¨¹ýInetAddress.getByName(\»ñÈ¡Oracle¹«Ë¾µÄInetAddress¶ÔÏó
2¡¢ ʹÓÃUDPÐÒé±àдһ¸öÍøÂç³ÌÐò£¬ÉèÖýÓÊն˳ÌÐò¼àÌý¶Ë¿ÚΪ8001£¬·¢ËͶ˷¢Ë͵ÄÊý¾ÝÊÇ¡°hello
world¡±¡£ Ìáʾ£º
1£©Ê¹ÓÃnew DatagramSocket(8001)¹¹Ôì·½·¨´´½¨½ÓÊն˵ÄDatagramSocket¶ÔÏ󣬵÷ÓÃreceive()·½
·¨½ÓÊÕÊý¾Ý¡£
2£©·¢ËͶ˺ͽÓÊÕ¶ËʹÓÃDatagramPacket·â×°Êý¾Ý£¬ÔÚ´´½¨·¢ËͶ˵ÄDatagramPacket¶ÔÏóʱÐèÒª
Ö¸¶¨Ä¿±êIPµØÖ·ºÍ¶Ë¿ÚºÅ£¬¶Ë¿ÚºÅÒªºÍ½ÓÊն˼àÌýµÄ¶Ë¿ÚºÅÒ»Ö¡£ 3£©·¢ËͶËʹÓÃsend()·½·¨·¢ËÍÊý¾Ý¡£ 4£©Ê¹ÓÃclose()·½·¨ÊÍ·ÅSocket×ÊÔ´¡£
3¡¢ ʹÓÃTCPÐÒé±àдһ¸öÍøÂç³ÌÐò£¬ÉèÖ÷þÎñÆ÷³ÌÐò¼àÌý¶Ë¿ÚΪ8002£¬µ±Óë¿Í»§¶Ë½¨Á¢Á¬½Óºó£¬Ïò
²©Ñ§¹È¡ª¡ªÈÃIT½Ìѧ¸ü¼òµ¥£¬ÈÃITѧϰ¸üÓÐЧ
¿Í»§¶Ë·¢ËÍ¡°hello world¡±£¬¿Í»§¶Ë½Ó¸ºÔð½«ÐÅÏ¢Êä³ö¡£ Ìáʾ£º
1£©Ê¹ÓÃServerSocket´´½¨·þÎñÆ÷¶Ë¶ÔÏ󣬼àÌý8002¶Ë¿Ú£¬µ÷ÓÃaccept()·½·¨µÈ´ý¿Í»§¶ËÁ¬½Ó£¬µ±Óë¿Í»§¶ËÁ¬½Óºó£¬µ÷ÓÃSocketµÄgetOutputStream()·½·¨»ñµÃÊä³öÁ÷¶ÔÏó£¬Êä³ö¡°hello world¡£ 2£©Ê¹ÓÃSocket´´½¨¿Í»§¶Ë¶ÔÏó£¬Ö¸¶¨·þÎñÆ÷µÄIPµØÖ·ºÍ¼àÌý¶Ë¿ÚºÅ£¬Óë·þÎñÆ÷¶Ë½¨Á¢Á¬½Óºó£¬
µ÷ÓÃSocketµÄgetInputStream()·½·¨»ñµÃÊäÈëÁ÷¶ÔÏ󣬶ÁÈ¡Êý¾Ý£¬²¢´òÓ¡³öÀ´ 3£©ÔÚ·þÎñÆ÷¶ËºÍ¿Í»§¶Ë¶¼µ÷ÓÃclose()·½·¨ÊÍ·Åsocket×ÊÔ´¡£