Java±à³Ì˼ÏëµÚ4°æ[ÖÐÎÄ°æ](PDF¸ñʽ)-µÚ121²¿·Ö
°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
µ¥»÷ÔÚBangBean¡¡ÉÏʱ»á±»¼¤»îµÄ½ÓÊÕÆ÷¡£ÕâÑù£¬ÎÒÃǽ«Äܹ»È·ÈÏ¿ÉÖ§³ÖµÄÊôÐÔºÍʼþ£º¡¡¡¡
¡¡¡¡
//£º¡¡BangBean¡£java¡¡¡¡
//¡¡A¡¡graphical¡¡Bean¡¡¡¡
package¡¡bangbean£»¡¡¡¡
import¡¡java¡£awt¡£*£»¡¡¡¡
import¡¡java¡£awt¡£event¡£*£»¡¡¡¡
import¡¡java¡£io¡£*£»¡¡¡¡
import¡¡java¡£util¡£*£»¡¡¡¡
¡¡¡¡
public¡¡class¡¡BangBean¡¡extends¡¡Canvas¡¡¡¡
¡¡¡¡¡¡¡¡¡¡implements¡¡Serializable¡¡£û¡¡¡¡
¡¡¡¡protected¡¡int¡¡xm£»¡¡ym£»¡¡¡¡
¡¡¡¡protected¡¡int¡¡cSize¡¡=¡¡20£»¡¡//¡¡Circle¡¡size¡¡¡¡
¡¡¡¡protected¡¡String¡¡text¡¡=¡¡¡¨Bang£¡¡¨£»¡¡¡¡
¡¡¡¡protected¡¡int¡¡fontSize¡¡=¡¡48£»¡¡¡¡
¡¡¡¡protected¡¡Color¡¡tColor¡¡=¡¡Color¡£red£»¡¡¡¡
¡¡¡¡protected¡¡ActionListener¡¡actionListener£»¡¡¡¡
¡¡¡¡public¡¡BangBean£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡addMouseListener£¨new¡¡ML£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡addMouseMotionListener£¨new¡¡MML£¨£©£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡int¡¡getCircleSize£¨£©¡¡£û¡¡return¡¡cSize£»¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡setCircleSize£¨int¡¡newSize£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡cSize¡¡=¡¡newSize£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡String¡¡getBangText£¨£©¡¡£û¡¡return¡¡text£»¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡setBangText£¨String¡¡newText£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡text¡¡=¡¡newText£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡int¡¡getFontSize£¨£©¡¡£û¡¡return¡¡fontSize£»¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡setFontSize£¨int¡¡newSize£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡fontSize¡¡=¡¡newSize£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡Color¡¡getTextColor£¨£©¡¡£û¡¡return¡¡tColor£»¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡setTextColor£¨Color¡¡newColor£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡tColor¡¡=¡¡newColor£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡paint£¨Graphics¡¡g£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡g¡£setColor£¨Color¡£black£©£»¡¡¡¡
¡¡¡¡¡¡¡¡g¡£drawOval£¨xm¡¡cSize/2£»¡¡ym¡¡cSize/2£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡cSize£»¡¡cSize£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡//¡¡This¡¡is¡¡a¡¡unicast¡¡listener£»¡¡which¡¡is¡¡¡¡
¡¡¡¡//¡¡the¡¡simplest¡¡form¡¡of¡¡listener¡¡management£º¡¡¡¡
¡¡¡¡public¡¡void¡¡addActionListener¡¡£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ActionListener¡¡l£©¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡463¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡465¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡throws¡¡TooManyListenersException¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡if£¨actionListener¡¡£¡=¡¡null£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡throw¡¡new¡¡TooManyListenersException£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡actionListener¡¡=¡¡l£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡removeActionListener£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ActionListener¡¡l£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡actionListener¡¡=¡¡null£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡ML¡¡extends¡¡MouseAdapter¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡mousePressed£¨MouseEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡Graphics¡¡g¡¡=¡¡getGraphics£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡g¡£setColor£¨tColor£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡g¡£setFont£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡new¡¡Font£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¨TimesRoman¡¨£»¡¡Font¡£BOLD£»¡¡fontSize£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡int¡¡width¡¡=¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡g¡£getFontMetrics£¨£©¡£stringWidth£¨text£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡g¡£drawString£¨text£»¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£¨getSize£¨£©¡£width¡¡width£©¡¡/2£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡getSize£¨£©¡£height/2£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡g¡£dispose£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡//¡¡Call¡¡the¡¡listener's¡¡method£º¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡if£¨actionListener¡¡£¡=¡¡null£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡actionListener¡£actionPerformed£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡new¡¡ActionEvent£¨BangBean¡£this£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ActionEvent¡£ACTION_PERFORMED£»¡¡null£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡class¡¡MML¡¡extends¡¡MouseMotionAdapter¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡mouseMoved£¨MouseEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡xm¡¡=¡¡e¡£getX£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡ym¡¡=¡¡e¡£getY£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡repaint£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡public¡¡Dimension¡¡getPreferredSize£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡return¡¡new¡¡Dimension£¨200£»¡¡200£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡//¡¡Testing¡¡the¡¡BangBean£º¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡BangBean¡¡bb¡¡=¡¡new¡¡BangBean£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡try¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡bb¡£addActionListener£¨new¡¡BBL£¨£©£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡catch£¨TooManyListenersException¡¡e£©¡¡£û£ý¡¡¡¡
¡¡¡¡¡¡¡¡Frame¡¡aFrame¡¡=¡¡new¡¡Frame£¨¡¨BangBean¡¡Test¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£addWindowListener£¨¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡WindowAdapter£¨£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡public¡¡void¡¡windowClosing£¨WindowEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡£ý£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡464¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡466¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£add£¨bb£»¡¡BorderLayout¡£CENTER£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setSize£¨300£»300£©£»¡¡¡¡
¡¡¡¡¡¡¡¡aFrame¡£setVisible£¨true£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
¡¡¡¡//¡¡During¡¡testing£»¡¡send¡¡action¡¡information¡¡¡¡
¡¡¡¡//¡¡to¡¡the¡¡console£º¡¡¡¡
¡¡¡¡static¡¡class¡¡BBL¡¡implements¡¡ActionListener¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡public¡¡void¡¡actionPerformed£¨ActionEvent¡¡e£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨BangBean¡¡action¡¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£ý¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
×îÖØÒªµÄÊÇÎÒÃÇ»á×¢Òâµ½BangBean¡¡Ö´ÐÐÁËÕâÖÖ´®Áª»¯µÄ½Ó¿Ú¡£ÕâÒâζ×ÅÓ¦ÓóÌÐò¹¹½¨¹¤¾ß¿ÉÒÔÔÚ³ÌÐòÉè¼ÆÕß¡¡
µ÷ÕûÍêÊôÐÔÖµºóÀûÓô®ÁªÎªBangBean¡¡Öü²ØËùÓеÄÐÅÏ¢¡£µ±Bean¡¡×÷ΪÔËÐеÄÓ¦ÓóÌÐòµÄÒ»²¿·Ö±»´´½¨Ê±£¬ÄÇ¡¡
Щ±»Öü²ØµÄÊôÐÔ±»ÖØлָ´£¬Òò´ËÎÒÃÇ¿ÉÒÔÕýÈ·µØµÃµ½ÎÒÃǵÄÉè¼Æ¡£¡¡¡¡
ÎÒÃÇÄÜ¿´µ½Í¨³£Í¬Bean¡¡Ò»ÆðÔËÐеÄËùÓеÄ×ֶζ¼ÊÇרÓõġª¡ªÔÊÐíÖ»ÄÜͨ¹ý·½·¨À´·ÃÎÊ£¬Í¨³£ÀûÓá°ÊôÐÔ¡±¡¡
½á¹¹¡£¡¡¡¡
µ±ÎÒÃÇ×¢ÊÓ×ÅaddActionListener£¨£©µÄÇ©Ãûʱ£¬ÎÒÃÇ»á×¢Òâµ½Ëü¿ÉÒÔ²úÉú³öÒ»¸öTooManyListenerException¡¡
¡¡£¨Ì«¶à½ÓÊÕÆ÷Òì³££©¡£Õâ¸öÒì³£Ö¸Ã÷ËüÊÇÒ»¸öµ¥Ò»µÄÀàÐ͵ģ¬Òâζ×ŵ±Ê¼þ·¢Éúʱ£¬ËüÖ»ÄÜ֪ͨһ¸ö½ÓÊÕ¡¡
Æ÷¡£Ò»°ãÇé¿öÏ£¬ÎÒÃÇ»áʹÓþßÓжàÖÖÀàÐ͵Äʼþ£¬ÒÔ±ãÒ»¸öʼþ֪ͨ¶à¸öµÄ½ÓÊÕÆ÷¡£µ«ÊÇ£¬ÄÇÑù»áÏÝÈëÖ±¡¡
µ½ÏÂÒ»ÕÂÎÒÃDzÅÄÜ×¼±¸ºÃµÄ½á¾ÖÖУ¬Òò´ËÕâЩÄÚÈݻᱻÖØлعˣ¨ÏÂÒ»¸ö±êÌâÊÇ¡°Java¡¡Beans¡¡µÄÖØлء¡
¹Ë¡±£©¡£µ¥Ò»ÀàÐ͵Äʼþ»Ø±ÜÁËÕâ¸öÄÑÌâ¡£¡¡¡¡
µ±ÎÒÃÇ°´ÏÂÊó±ê¼üʱ£¬ÎÄ×Ö±»°²Èë¡¡BangBean¡¡Öм䣬²¢ÇÒÈç¹û¶¯×÷½ÓÊÕÆ÷×ֶδæÔÚ£¬ËüµÄactionPerformed£¨£©¡¡
·½·¨¾Í±»µ÷Ó㬴´½¨Ò»¸öеÄActionEvent¡¡¶ÔÏóÔÚ´¦Àí¹ý³ÌÖС£ÎÞÂÛºÎʱÊó±êÒƶ¯£¬ËüµÄÐÂ×ù±ê½«±»²¶×½£¬¡¡
²¢ÇÒ»²¼»á±»ÖØ»£¨ÏñÎÒÃÇËù¿´µ½µÄĨȥһЩ»²¼ÉϵÄÎÄ×Ö£©¡£¡¡¡¡
main£¨£©·½·¨Ôö¼ÓÁËÔÊÐíÎÒÃÇ´ÓÃüÁîÐÐÖвâÊÔ³ÌÐòµÄ¹¦ÄÜ¡£µ±Ò»¸ö¡¡Bean¡¡ÔÚÒ»¸ö¿ª·¢»·¾³ÖУ¬main£¨£©·½·¨²»»á±»¡¡
ʹÓ㬵«ÓµÓÐËüÊǾø¶ÔÓÐÒæµÄ£¬ÒòΪËüÌṩÁË¿ì½ÝµÄ²âÊÔÄÜÁ¦¡£ÎÞÂÛºÎʱһ¸öActionEvent¡¡·¢Éú£¬main£¨£©·½¡¡
·¨¶¼½«´´½¨ÁËÒ»¸öÖ¡²¢°²ÖÃÁËÒ»¸ö¡¡BangBean¡¡ÔÚËüÀïÃ棬»¹ÔÚBangBean¡¡Öи½ÉÏÁËÒ»¸ö¼òµ¥µÄ¶¯×÷½ÓÊÕÆ÷ÒÔ´ò¡¡
Ó¡µ½¿ØÖÆ̨¡£µ±È»£¬Ò»°ãÀ´ËµÓ¦ÓóÌÐò¹¹½¨¹¤¾ß½«´´½¨´ó¶àÊýµÄBean¡¡µÄ´úÂë¡£µ±ÎÒÃÇͨ¹ýBeanDumper¡¡»òÕß¡¡
°²·ÅBangBean¡¡µ½Ò»¸ö¿É¼¤»îBean¡¡µÄ¿ª·¢»·¾³ÖÐÈ¥ÔËÐÐBangBean¡¡Ê±£¬ÎÒÃÇ»á×¢Òâµ½»áÓкܶà¶îÍâµÄÊôÐԺͶ¯¡¡
×÷Ã÷ÏÔ³¬¹ýÁËÉÏÃæµÄ´úÂë¡£ÄÇÊÇÒòΪBangBean¡¡´Ó»²¼Öм̳У¬²¢ÇÒ»²¼¾ÍÊÇÒ»¸ö¡¡Bean¡¡£¬Òò´ËÎÒÃÇ¿´µ½ËüµÄ¡¡
ÊôÐÔºÍʼþͬÑùµÄºÏÊÊ¡£¡¡¡¡
13¡£18¡£4¡¡Bean¡¡µÄ·â×°¡¡¡¡
ÔÚÎÒÃÇ¿ÉÒÔ°²·ÅÒ»¸öBean¡¡µ½Ò»¸ö¿É¼¤»îBean¡¡µÄ¿ÉÊÓ»¯¹¹½¨¹¤¾ßÖÐÇ°£¬Ëü±ØÐë±»·ÅÈëµ½±ê×¼µÄBean¡¡ÈÝÆ÷À¡¡
Ò²¾ÍÊÇ°üº¬¡¡Bean¡¡ÀàºÍÒ»¸ö±íʾ¡°ÕâÊÇÒ»¸öBean¡¡¡±µÄÇåµ¥ÎļþµÄJAR¡¡£¨Java¡¡ARchive£¬Java¡¡Îļþ£©ÎļþÖС£¡¡
Çåµ¥ÎļþÊÇÒ»¸ö¼òµ¥µÄ½ôËæʼþ½á¹¹µÄÎı¾Îļþ¡£¶ÔÓÚBangBean¡¡¶øÑÔ£¬Çåµ¥Îļþ¾ÍÏñÏÂÃæÕâÑù£º¡¡¡¡
¡¡¡¡
Manifest¡Version£º¡¡1¡£0¡¡¡¡
¡¡¡¡
Name£º¡¡bangbean/BangBean¡£class¡¡¡¡
Java¡Bean£º¡¡True¡¡¡¡
¡¡¡¡
ÆäÖУ¬µÚÒ»ÐÐÖ¸³öÇåµ¥Îļþ½á¹¹µÄ°æ±¾£¬ÕâÊÇ¡¡SUN¡¡¹«Ë¾ÔںܾÃÒÔÇ°¹«²¼µÄ°æ±¾¡£µÚ¶þÐУ¨¿ÕÐкöÂÔ£©¶ÔÎļþ¡¡
ÃüÃûΪBangBean¡£class¡£µÚÈýÐбíʾ¡°Õâ¸öÎļþÊÇÒ»¸öBean¡¡¡±¡£Ã»ÓеÚÈýÐУ¬³ÌÐò¹¹½¨¹¤¾ß²»»á½«Àà×÷Ϊһ¡¡
¸öBean¡¡À´ÈÏ¿É¡£¡¡¡¡
ΨһÄÑÒÔ´¦ÀíµÄ²¿·ÖÊÇÎÒÃDZØÐë¿Ï¶¨¡°Name£º¡±×Ö¶ÎÖеÄ·¾¶ÊÇÕýÈ·µÄ¡£Èç¹ûÎÒÃǻعËBangBean¡£java¡¡£¬ÎÒÃÇ¡¡
»á¿´µ½ËüÔÚ¡¡package¡¡bangbean¡¡£¨ÒòΪ´æ·ÅÀà·¾¶µÄ×ÓĿ¼³ÆΪ¡°bangbean¡¡¡±£©ÖУ¬²¢ÇÒÕâ¸öÃû×ÖÔÚÇåµ¥Îļþ¡¡
ÖбØÐë°üÀ¨·â×°µÄÐÅÏ¢¡£ÁíÍ⣬ÎÒÃDZØÐë°²·ÅÇåµ¥ÎļþÔÚÎÒÃÇ·âװ·¾¶µÄ¸ùĿ¼ÉÏ£¬ÔÚÕâ¸öÀý×ÓÖÐÒâζ×Å°²¡¡
·ÅÎļþÔÚbangbean¡¡×ÓĿ¼ÖС£ÕâÖ®ºó£¬ÎÒÃDZØÐë´ÓͬһĿ¼Öе÷Óá¡Jar¡¡À´×÷ΪÇåµ¥Îļþ£¬ÈçÏÂËùʾ£º¡¡¡¡
jar¡¡cfm¡¡BangBean¡£jar¡¡BangBean¡£mf¡¡bangbean¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡465¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡467¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
Õâ¸öÀý×Ó¼Ù¶¨ÎÒÃÇÏë²úÉúÒ»¸öÃûΪ¡¡BangBean¡£jar¡¡µÄÎļþ²¢ÇÒÎÒÃǽ«Çåµ¥·Åµ½Ò»¸ö³ÆΪBangBean¡£mf¡¡ÎļþÖС£¡¡¡¡
ÎÒÃÇ¿ÉÄÜ»áÏë¡°µ±ÎÒ±àÒëBangBean¡£java¡¡Ê±£¬²úÉúµÄÆäËüÀà»áÔõôÑùÄØ£¿¡±Å¶£¬ËüÃÇ»áÔÚbangbean¡¡×ÓĿ¼ÖС¡
±»ÖÐÖ¹£¬²¢ÇÒÎÒÃÇ»á×¢Òâµ½ÉÏÃæjarÃüÁîÐеÄ×îºóÒ»¸ö×Ô±äÁ¿¾ÍÊÇ¡¡bangbean¡¡×ÓĿ¼¡£µ±ÎÒÃǸø¡¡jar×ÓĿ¼Ãû¡¡
ʱ£¬Ëü·â×°Õû¸öµÄ×ÓĿ¼µ½jarÎļþÖУ¨ÔÚÕâ¸öÀý×ÓÖУ¬°üÀ¨¡¡BangBean¡£java¡¡µÄÔ´´úÂëÎļþ¡ª¡ª¶ÔÓÚÎÒÃÇ×Ô¡¡
¼ºµÄBean¡¡ÎÒÃÇ¿ÉÄܲ»»áȥѡÔñ°üº¬Ô´´úÂëÎļþ¡££©ÁíÍ⣬Èç¹ûÎÒÃǸıäÖ÷Ò⣬½â¿ª´ò°üµÄ¡¡JAR¡¡Îļþ£¬ÎÒÃǻᡡ
·¢ÏÖÎÒÃÇÇåµ¥Îļþ²¢²»ÔÚÀïÃ棬µ«jar´´½¨ÁËËü×Ô¼ºµÄÇåµ¥Îļþ£¨²¿·Ö¸ù¾ÝÎÒÃǵÄÎļþ£©£¬³ÆΪ¡¡
MAINFEST¡£MF¡¡²¢ÇÒ°²·ÅËüµ½META¡INF×ÓĿ¼ÖУ¨´ú±í¡°meta¡information¡±£©¡£Èç¹ûÎÒÃÇ´ò¿ªÕâ¸öÇåµ¥ÎÄ¡¡
¼þ£¬ÎÒÃÇͬÑù»á×¢Òâµ½¡¡jarΪÿ¸öÎļþ¼ÓÈëÊý×ÖÇ©ÃûÐÅÏ¢£¬Æä½á¹¹ÈçÏ£º¡¡¡¡
Digest¡Algorithms£º¡¡SHA¡¡MD5¡¡¡¡
SHA¡Digest£º¡¡pDpEAG9NaeCx8aFtqPI4udSX/O0=¡¡¡¡
MD5¡Digest£º¡¡O4NcS1hE3Smnzlp2hj6qeg==¡¡¡¡
Ò»°ãÀ´Ëµ£¬ÎÒÃDz»±Øµ£ÐÄÕâЩ£¬Èç¹ûÎÒÃÇÒª×öһЩÐ޸ģ¬¿ÉÒÔÐÞ¸ÄÎÒÃǵÄÔʼµÄÇåµ¥Îļþ²¢ÇÒÖØе÷ÓÃjar¡¡
ÒÔΪÎÒÃǵÄBean¡¡´´½¨ÁËÒ»¸öеÄJAR¡¡Îļþ¡£ÎÒÃÇͬÑùÒ²¿ÉÒÔ¼òµ¥µØͨ¹ýÔö¼ÓÆäËüµÄ¡¡Bean¡¡µÄÐÅÏ¢µ½ÎÒÃÇÇåµ¥¡¡
ÎļþÀ´Ôö¼ÓËüÃǵ½¡¡JAR¡¡ÎļþÖС£¡¡¡¡
ÖµµÃ×¢ÒâµÄÊÇÎÒÃÇ»òÐíÐèÒª°²·Åÿ¸öBean¡¡µ½Ëü×Ô¼ºµÄ×ÓĿ¼ÖУ¬ÒòΪµ±ÎÒÃÇ´´½¨Ò»¸öJAR¡¡Îļþʱ£¬·ÖÅäJAR¡¡
Ó¦ÓÃĿ¼Ãû²¢ÇÒJAR¡¡·ÅÖÃ×ÓĿ¼ÖеÄÈκÎÎļþµ½JAR¡¡ÎļþÖС£ÎÒÃÇ¿ÉÒÔ¿´µ½¡¡Frog¡¡ºÍ¡¡BangBean¡¡¶¼ÔÚËüÃÇ×Ô¼º¡¡
µÄ×ÓĿ¼ÖС£¡¡¡¡
Ò»µ©ÎÒÃǽ«ÎÒÃǵÄBean¡¡ÕýÈ·µØ·ÅÈëÒ»¸ö¡¡JAR¡¡ÎļþÖУ¬ÎÒÃǾͿÉÒÔЯ´øËüµ½Ò»¸ö¿ÉÒÔ¼¤»îBean¡¡µÄ±à³Ì»·¾³ÖС¡
ʹÓá£Ê¹ÓÃÕâÖÖ·½·¨£¬ÎÒÃÇ¿ÉÒÔ´ÓÒ»ÖÖ¹¤¾ßµ½ÁíÒ»ÖÖ¹¤¾ß¼ä½»Ìæ±ä»»£¬µ«¡¡SUN¡¡¹«Ë¾Îª¡¡Java¡¡Beans¡¡ÌṩÁËÃâ·Ñ¡¡
¸ßЧµÄ²âÊÔ¹¤¾ßÔÚËüÃǵġ°Bean¡¡Development¡¡Kit£¬Bean¡¡¿ª·¢¹¤¾ß¡±£¨BDK£©³ÆΪ¡°beanbox¡±¡££¨ÎÒÃÇ¿ÉÒÔ¡¡
´Ójavasoft¡£¡¡´¦ÏÂÔØ¡££©ÔÚÎÒÃÇÆô¶¯¡¡beanbox¡¡Ç°£¬·ÅÖÃÎÒÃǵÄBean¡¡µ½beanbox¡¡ÖУ¬¸´ÖÆJAR¡¡Îļþµ½¡¡
BDK¡¡µÄ¡°jars¡±×ÓĿ¼ÖС£¡¡¡¡
13¡£18¡£5¡¡¸ü¸´Ôӵġ¡Bean¡¡Ö§³Ö¡¡¡¡
ÎÒÃÇ¿ÉÒÔ¿´µ½´´½¨Ò»¸ö¡¡Bean¡¡ÏÔÈ»¶àôµÄ¼òµ¥¡£ÔÚ³ÌÐòÉè¼ÆÖÐÎÒÃǼ¸ºõ²»Êܵ½ÈκεÄÏÞÖÆ¡£Java¡¡Bean¡¡µÄÉè¼Æ¡¡
ÌṩÁËÒ»¸ö¼òµ¥µÄÊäÈëµã£¬ÕâÑù¿ÉÒÔÌá¸ßµ½¸ü¸´ÔӵIJã´ÎÉÏ¡£ÕâЩ¸ß²ã´ÎµÄÎÊÌⳬ³öÁËÕâ±¾ÊéËùÒªÌÖÂ۵ķ¶¡¡
Χ£¬µ«ËüÃÇ»áÔÚ´Ë×ö¼òÒªµÄ½éÉÜ¡£ÎÒÃÇ¿ÉÒÔÔÚ¡¡http£º//java¡£sun¡£/beans¡¡ÉÏÕÒµ½¸ü¶àµÄÏêϸ×ÊÁÏ¡£¡¡¡¡
ÎÒÃÇÔö¼Ó¸ü¼Ó¸´ÔӵijÌÐòºÍËüµÄÊôÐÔµ½Ò»¸öλÖá£ÉÏÃæµÄÀý×ÓÏÔʾһ¸ö¶ÀÌصÄÊôÐÔ£¬µ±È»ËüÒ²¿ÉÄÜ´ú±íÒ»¸ö¡¡
Êý×éµÄÊôÐÔ¡£Õâ³ÆΪË÷ÒýÊôÐÔ¡£ÎÒÃǼòµ¥µØÌṩһ¸öÏàÓ¦µÄ·½·¨£¨ÔÙÕßÓÐÒ»¸ö·½·¨ÃûµÄÃüÃû¹æÔò£©²¢ÇÒ¡¡
IntrospectorÈÏ¿ÉË÷ÒýÊôÐÔ£¬Òò´ËÎÒÃǵÄÓ¦ÓóÌÐò¹¹½¨¹¤¾ßÏàÓ¦µÄ´¦Àí¡£¡¡¡¡
ÊôÐÔ¿ÉÒÔ±»À¦°ó£¬ÕâÒâζ×ÅËüÃǽ«Í¨¹ý¡¡PropertyChangeEvent¡¡Í¨ÖªÆäËüµÄ¶ÔÏó¡£ÆäËüµÄ¶ÔÏó¿ÉÒÔËæºó¸ù¾Ý¶Ô¡¡
Bean¡¡µÄ¸Ä±äÑ¡ÔñÐÞ¸ÄËüÃÇ×Ô¼º¡£¡¡¡¡
ÊôÐÔ¿ÉÒÔ±»Êø¸¿£¬ÕâÒâζ×ÅÆäËüµÄ¶ÔÏó¿ÉÒÔÔÚÒ»¸öÊôÐԵĸı䲻Äܱ»½ÓÊÜʱ£¬¾Ü¾øËü¡£ÆäËüµÄ¶ÔÏóÀûÓÃÒ»¸ö¡¡
PropertyChangeEvent¡¡À´Í¨Öª£¬²¢ÇÒËüÃDzúÉúÒ»¸öProptertyVetoException¡¡È¥×èÖ¹Ð޸ĵķ¢Éú£¬²¢»Ö¸´ÎªÔ¡¡
À´µÄÖµ¡£¡¡¡¡
ÎÒÃÇͬÑùÄܹ»¸Ä±äÎÒÃǵÄBean¡¡ÔÚÉè¼ÆʱµÄ±»Ãè»æ³ÉµÄ·½·¨£º¡¡¡¡
£¨1£©¡¡ÎÒÃÇ¿ÉÒÔΪÎÒÃÇÌØÊâµÄ¡¡Bean¡¡Ìṩһ¸ö¶¨ÖƵÄÊôÐÔ±í¡£Õâ¸öÆÕͨµÄÊôÐÔ±í½«±»ËùÓеÄBean¡¡ËùʹÓ㬵«µ±¡¡
ÎÒÃǵÄBean¡¡±»Ñ¡Ôñʱ£¬Ëü»á×Ô¶¯µØµ÷ÓÃÕâÕÅÊôÐÔ±í¡£¡¡¡¡
£¨2£©¡¡ÎÒÃÇ¿ÉÒÔΪһ¸öÌØÊâµÄÊôÐÔ´´½¨Ò»¸ö¶¨ÖƵıà¼Æ÷£¬Òò´ËÆÕͨµÄÊôÐÔ±í±»Ê¹Ó㬵«µ±ÎÒÃÇÖ¸¶¨µÄÊôÐÔ±»¡¡
µ÷ÓÃʱ£¬±à¼Æ÷»á×Ô¶¯µØ±»µ÷Óᣡ¡¡¡
£¨3£©ÎÒÃÇ¿ÉÒÔΪÎÒÃǵġ¡Bean¡¡Ìṩһ¸ö¶¨ÖƵÄBeanInfo¡¡À࣬²úÉúµÄÐÅÏ¢²»Í¬ÓÚÓÉ¡¡Introspector¡¡Ä¬ÈϲúÉúµÄ¡£¡¡¡¡
£¨4£©¡¡ËüͬÑù¿ÉÄÜÔÚËùÓеÄFeatureDescriptors¡¡Öиı䡰expert¡±µÄ¿ª¹Øģʽ£¬ÒÔ±æ±ð»ù±¾ÌØÕ÷ºÍ¸ü¸´ÔÓµÄÌØ¡¡
Õ÷¡£¡¡¡¡
13¡£18¡£6¡¡Bean¡¡¸ü¶àµÄ֪ʶ¡¡¡¡
ÁíÍâÓйصÄÕùÒéÊÇBean¡¡²»Äܱ»±àÖ·¡£ÎÞÂÛºÎʱÎÒÃÇ´´½¨Ò»¸öBean¡¡£¬¶¼Ï£ÍûËü»áÔÚÒ