°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
RoundGlyph¡£draw£¨£©£»¡¡radius¡¡=¡¡0¡¡¡¡
Glyph£¨£©¡¡after¡¡draw£¨£©¡¡¡¡
RoundGlyph¡£RoundGlyph£¨£©£»¡¡radius¡¡=¡¡5¡¡¡¡
¡¡¡¡
µ±Glyph¡¡µÄ¹¹½¨Æ÷µ÷ÓÃdraw£¨£©Ê±£¬radius¡¡µÄÖµÉõÖÁ²»ÊÇĬÈϵijõʼֵ1£¬¶øÊÇ¡¡0¡£Õâ¿ÉÄÜÊÇÓÉÓÚÒ»¸öµãºÅ»ò¡¡
ÕßÆÁÄ»Éϸù±¾Ê²Ã´¶¼Ã»Óл¶øÔì³ÉµÄ¡£ÕâÑù¾Í²»µÃ²»¿ªÊ¼²éÕÒ³ÌÐòÖеĴíÎó£¬ÊÔ×ÅÕÒ³ö³ÌÐò²»Äܹ¤×÷µÄÔ¡¡
Òò¡£¡¡¡¡
Ç°Ò»½Ú½²ÊöµÄ³õʼ»¯Ë³Ðò²¢²»Ê®·ÖÍêÕû£¬¶øÄÇÊǽâ¾öÎÊÌâµÄ¹Ø¼üËùÔÚ¡£³õʼ»¯µÄʵ¼Ê¹ý³ÌÊÇÕâÑùµÄ£º¡¡¡¡
£¨1£©¡¡ÔÚ²ÉÈ¡ÆäËûÈκβÙ×÷֮ǰ£¬Îª¶ÔÏó·ÖÅäµÄ´æ´¢¿Õ¼ä³õʼ»¯³É¶þ½øÖÆÁã¡£¡¡¡¡
£¨2£©¡¡¾ÍÏóÇ°ÃæÐðÊöµÄÄÇÑù£¬µ÷Óûù´¡À๹½¨Æ÷¡£´Ëʱ£¬±»¸²¸ÇµÄdraw£¨£©·½·¨»áµÃµ½µ÷Ó㨵ÄÈ·ÊÇÔÚ¡¡
RoundGlyph¡¡¹¹½¨Æ÷µ÷ÓÃ֮ǰ£©£¬´Ëʱ»á·¢ÏÖ¡¡radius¡¡µÄֵΪ¡¡0£¬ÕâÊÇÓÉÓÚ²½Ö裨1£©Ôì³ÉµÄ¡£¡¡¡¡
£¨3£©¡¡°´ÕÕÔÏÈÉùÃ÷µÄ˳Ðòµ÷ÓóÉÔ±³õʼ»¯´úÂë¡£¡¡¡¡
£¨4£©¡¡µ÷ÓÃÑÜÉúÀ๹½¨Æ÷µÄÖ÷Ìå¡£¡¡¡¡
¡¡¡¡
²ÉÈ¡ÕâЩ²Ù×÷ÒªÇóÓÐÒ»¸öÇ°ÌᣬÄǾÍÊÇËùÓж«Î÷¶¼ÖÁÉÙÒª³õʼ»¯³ÉÁ㣨»òÕßijЩÌØÊâÊý¾ÝÀàÐÍÓë¡°Á㡱µÈ¼Û¡¡
µÄÖµ£©£¬¶ø²»Êǽö½öÁô×÷À¬»ø¡£ÆäÖаüÀ¨Í¨¹ý¡°ºÏ³É¡±¼¼ÊõǶÈëÒ»¸öÀàÄÚ²¿µÄ¶ÔÏó¾ä±ú¡£Èç¹û¼ÙÈôÍü¼Ç³õʼ¡¡
»¯ÄǸö¾ä±ú£¬¾Í»áÔÚÔËÐÐÆÚ¼ä³öÏÖÎ¥Àýʼþ¡£ÆäËûËùÓж«Î÷¶¼»á±ä³ÉÁ㣬ÕâÔÚ¹Û¿´½á¹ûʱͨ³£ÊÇÒ»¸öÑÏÖصġ¡
¾¯¸æÐźš£¡¡¡¡
ÔÚÁíÒ»·½Ã棬Ӧ¶ÔÕâ¸ö³ÌÐòµÄ½á¹ûÌá¸ß¾¯Ìè¡£´ÓÂß¼µÄ½Ç¶È˵£¬ÎÒÃÇËƺõÒѽøÐÐÁËÎÞи¿É»÷µÄÉè¼Æ£¬ËùÒÔËü¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡203¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡205¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
µÄ´íÎóÐÐΪÁîÈ˷dz£²»¿É˼Òé¡£¶øÇÒûÓдӱàÒëÆ÷ÄÇÀïÊÕµ½Èκα¨´íÐÅÏ¢£¨C£«£«ÔÚÕâÖÖÇé¿öÏ»á±íÏÖ³ö¸üºÏÀí¡¡
µÄÐÐΪ£©¡£ÏóÕâÑùµÄ´íÎó»áºÜÇáÒ׵ر»È˺öÂÔ£¬¶øÇÒÒª»¨ºÜ³¤µÄʱ¼ä²ÅÄÜÕÒ³ö¡£¡¡¡¡
Òò´Ë£¬Éè¼Æ¹¹½¨Æ÷ʱһ¸öÌرðÓÐЧµÄ¹æÔòÊÇ£ºÓþ¡¿ÉÄܼòµ¥µÄ·½·¨Ê¹¶ÔÏó½øÈë¾ÍÐ÷״̬£»Èç¹û¿ÉÄÜ£¬±ÜÃâµ÷¡¡
ÓÃÈκη½·¨¡£ÔÚ¹¹½¨Æ÷ÄÚΨһÄܹ»°²È«µ÷ÓõÄÊÇÔÚ»ù´¡ÀàÖоßÓÐfinal¡¡ÊôÐÔµÄÄÇЩ·½·¨£¨Ò²ÊÊÓÃÓÚprivate¡¡
·½·¨£¬ËüÃÇ×Ô¶¯¾ßÓÐfinal¡¡ÊôÐÔ£©¡£ÕâЩ·½·¨²»Äܱ»¸²¸Ç£¬ËùÒÔ²»»á³öÏÖÉÏÊöDZÔÚµÄÎÊÌâ¡£¡¡¡¡
7¡£8¡¡Í¨¹ý¼Ì³Ð½øÐÐÉè¼Æ¡¡¡¡
ѧϰÁ˶àÐÎÐÔµÄ֪ʶºó£¬ÓÉÓÚ¶àÐÎÐÔÊÇÈç´Ë¡°´ÏÃ÷¡±µÄÒ»ÖÖ¹¤¾ß£¬ËùÒÔ¿´ÆðÀ´ËƺõËùÓж«Î÷¶¼Ó¦¸Ã¼Ì³Ð¡£µ«¡¡
¼ÙÈç¹ý¶ÈʹÓü̳м¼Êõ£¬Ò²»áʹ×Ô¼ºµÄÉè¼Æ±äµÃ²»±ØÒªµØ¸´ÔÓÆðÀ´¡£ÊÂʵÉÏ£¬µ±ÎÒÃÇÒÔÒ»¸öÏÖ³ÉÀàΪ»ù´¡½¨¡¡
Á¢Ò»¸öÐÂÀàʱ£¬ÈçÊ×ÏÈÑ¡Ôñ¼Ì³Ð£¬»áʹÇé¿ö±äµÃÒì³£¸´ÔÓ¡£¡¡¡¡
Ò»¸ö¸üºÃµÄ˼·ÊÇÊ×ÏÈÑ¡Ôñ¡°ºÏ³É¡±¡ª¡ªÈç¹û²»ÄÜÊ®·ÖÈ·¶¨×Ô¼ºÓ¦Ê¹ÓÃÄÄÒ»¸ö¡£ºÏ³É²»»áÇ¿ÆÈÎÒÃǵijÌÐòÉè¡¡
¼Æ½øÈë¼Ì³ÐµÄ·Ö¼¶½á¹¹ÖС£Í¬Ê±£¬ºÏ³ÉÏԵøü¼ÓÁé»î£¬ÒòΪ¿ÉÒÔ¶¯Ì¬Ñ¡ÔñÒ»ÖÖÀàÐÍ£¨ÒÔ¼°ÐÐΪ£©£¬¶ø¼Ì³ÐÒª¡¡
ÇóÔÚ±àÒëÆÚ¼ä׼ȷµØÖªµÀÒ»ÖÖÀàÐÍ¡£ÏÂÃæÕâ¸öÀý×ӶԴ˽øÐÐÁ˲ûÊÍ£º¡¡¡¡
¡¡¡¡
//£º¡¡Transmogrify¡£java¡¡¡¡
//¡¡Dynamically¡¡changing¡¡the¡¡behavior¡¡of¡¡¡¡
//¡¡an¡¡object¡¡via¡¡position¡£¡¡¡¡
¡¡¡¡
interface¡¡Actor¡¡£û¡¡¡¡
¡¡¡¡void¡¡act£¨£©£»¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
class¡¡HappyActor¡¡implements¡¡Actor¡¡£û¡¡¡¡
¡¡¡¡public¡¡void¡¡act£¨£©¡¡£û¡¡¡¡¡¡
¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨HappyActor¡¨£©£»¡¡¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
class¡¡SadActor¡¡implements¡¡Actor¡¡£û¡¡¡¡
¡¡¡¡public¡¡void¡¡act£¨£©¡¡£û¡¡¡¡¡¡
¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨SadActor¡¨£©£»¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
class¡¡Stage¡¡£û¡¡¡¡
¡¡¡¡Actor¡¡a¡¡=¡¡new¡¡HappyActor£¨£©£»¡¡¡¡
¡¡¡¡void¡¡change£¨£©¡¡£û¡¡a¡¡=¡¡new¡¡SadActor£¨£©£»¡¡£ý¡¡¡¡
¡¡¡¡void¡¡go£¨£©¡¡£û¡¡a¡£act£¨£©£»¡¡£ý¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
public¡¡class¡¡Transmogrify¡¡£û¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡Stage¡¡s¡¡=¡¡new¡¡Stage£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡s¡£go£¨£©£»¡¡//¡¡Prints¡¡¡¨HappyActor¡¨¡¡¡¡
¡¡¡¡¡¡¡¡s¡£change£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡s¡£go£¨£©£»¡¡//¡¡Prints¡¡¡¨SadActor¡¨¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
ÔÚÕâÀһ¸öStage¡¡¶ÔÏó°üº¬ÁËÖ¸ÏòÒ»¸öActor¡¡µÄ¾ä±ú£¬ºóÕß±»³õʼ»¯³ÉÒ»¸ö¡¡HappyActor¡¡¶ÔÏó¡£ÕâÒâζ×Å¡¡
go£¨£©»á²úÉúÌض¨µÄÐÐΪ¡£µ«ÓÉÓÚ¾ä±úÔÚÔËÐÐÆÚ¼ä¿ÉÒÔÖØÐÂÓëÒ»¸ö²»Í¬µÄ¶ÔÏó°ó¶¨»ò½áºÏÆðÀ´£¬ËùÒÔSadActor¡¡
¶ÔÏóµÄ¾ä±ú¿ÉÔÚa¡¡Öеõ½Ìæ»»£¬È»ºóÓÉgo£¨£©²úÉúµÄÐÐΪ·¢Éú¸Ä±ä¡£ÕâÑùÒ»À´£¬ÎÒÃÇÔÚÔËÐÐÆÚ¼ä¾Í»ñµÃÁ˺ܴó¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡204¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡206¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
µÄÁé»îÐÔ¡£Óë´ËÏà·´£¬ÎÒÃDz»ÄÜÔÚÔËÐÐÆڼ任Óò»Í¬µÄÐÎʽÀ´½øÐм̳У»ËüÒªÇóÔÚ±àÒëÆÚ¼äÍêÈ«¾ö¶¨ÏÂÀ´¡£¡¡¡¡
Ò»Ìõ³£¹æµÄÉè¼Æ×¼ÔòÊÇ£ºÓü̳бí´ïÐÐΪ¼äµÄ²îÒ죬²¢ÓóÉÔ±±äÁ¿±í´ï״̬µÄ±ä»¯¡£ÔÚÉÏÊöÀý×ÓÖУ¬Á½Õ߶¼¡¡
µÃµ½ÁËÓ¦Ó㺼̳ÐÁËÁ½¸ö²»Í¬µÄÀ࣬ÓÃÓÚ±í´ï¡¡act£¨£©·½·¨µÄ²îÒ죻¶ø¡¡Stage¡¡Í¨¹ýºÏ³É¼¼ÊõÔÊÐíËü×Ô¼ºµÄ״̬¡¡
·¢Éú±ä»¯¡£ÔÚÕâÖÖÇé¿öÏ£¬ÄÇÖÖ״̬µÄ¸Ä±äͬʱҲ²úÉúÁËÐÐΪµÄ±ä»¯¡£¡¡¡¡
7¡£8¡£1¡¡¡¡´¿¼Ì³ÐÓëÀ©Õ¹¡¡¡¡
ѧϰ¼Ì³Ðʱ£¬ÎªÁË´´½¨¼Ì³Ð·Ö¼¶½á¹¹£¬¿´À´×îÃ÷ÏԵķ½·¨ÊDzÉÈ¡Ò»ÖÖ¡°´¿´â¡±µÄÊֶΡ£Ò²¾ÍÊÇ˵£¬Ö»ÓÐÔÚ»ù¡¡
´¡Àà»ò¡°½Ó¿Ú¡±ÖÐÒѽ¨Á¢µÄ·½·¨²Å¿ÉÔÚÑÜÉúÀàÖб»¸²¸Ç£¬ÈçÏÂÃæÕâÕÅͼËùʾ£º¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
¿É½«ÆäÃèÊö³ÉÒ»ÖÖ´¿´âµÄ¡°ÊôÓÚ¡±¹Øϵ£¬ÒòΪһ¸öÀàµÄ½Ó¿ÚÒѹ涨ÁËËüµ½µ×¡°ÊÇʲô¡±»òÕß¡°ÊôÓÚʲô¡±¡£¡¡
ͨ¹ý¼Ì³Ð£¬¿É±£Ö¤ËùÓÐÑÜÉúÀ඼ֻӵÓлù´¡ÀàµÄ½Ó¿Ú¡£Èç¹û°´ÉÏÊöʾÒâͼ²Ù×÷£¬ÑÜÉú³öÀ´µÄÀà³ýÁË»ù´¡ÀàµÄ¡¡
½Ó¿ÚÖ®Í⣬Ҳ²»»áÔÙÓµÓÐÆäËûʲô¡£¡¡¡¡
¿É½«ÆäÏëÏó³ÉÒ»ÖÖ¡°´¿Ìæ»»¡±£¬ÒòΪÑÜÉúÀà¶ÔÏó¿ÉΪ»ù´¡ÀàÍêÃÀµØÌæ»»µô¡£Ê¹ÓÃËüÃǵÄʱºò£¬ÎÒÃǸù±¾Ã»±Ø¡¡
ÒªÖªµÀÓë×ÓÀàÓйصÄÈκζîÍâÐÅÏ¢¡£ÈçÏÂËùʾ£º¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
Ò²¾ÍÊÇ˵£¬»ù´¡Àà¿É½ÓÊÕÎÒÃÇ·¢¸øÑÜÉúÀàµÄÈκÎÏûÏ¢£¬ÒòΪÁ½ÕßÓµÓÐÍêÈ«Ò»ÖµĽӿڡ£ÎÒÃÇÒª×öµÄÈ«²¿ÊÂÇé¡¡
¾ÍÊÇ´ÓÑÜÉúÉÏËÝÔìÐÍ£¬¶øÇÒÓÀÔ¶²»ÐèÒª»Ø¹ýÍ·À´¼ì²é¶ÔÏóµÄ׼ȷÀàÐÍÊÇʲô¡£ËùÓÐϸ½Ú¶¼ÒÑͨ¹ý¶àÐÎÐÔ»ñµÃ¡¡
ÁËÍêÃÀµÄ¿ØÖÆ¡£¡¡¡¡
Èô°´ÕâÖÖ˼·¿¼ÂÇÎÊÌ⣬ÄÇôһ¸ö´¿´âµÄ¡°ÊôÓÚ¡±¹ØϵËƺõÊÇΨһÃ÷ÖǵÄÉè¼Æ·½·¨£¬ÆäËûÈκÎÉè¼Æ·½·¨¶¼»á¡¡
µ¼Ö»ìÂÒ²»ÇåµÄ˼·£¬¶øÇÒÔÚ¶¨ÒåÉÏ´æÔںܴóµÄÀ§ÄÑ¡£µ«ÕâÖÖÏë·¨ÓÖÊôÓÚÁíÒ»¸ö¼«¶Ë¡£¾¹ýϸÖµÄÑо¿£¬ÎÒ¡¡
ÃÇ·¢ÏÖÀ©Õ¹½Ó¿Ú¶ÔÓÚһЩÌض¨ÎÊÌâÀ´ËµÊÇÌرðÓÐЧµÄ·½°¸¡£¿É½«Æä³ÆΪ¡°ÀàËÆÓÚ¡±¹Øϵ£¬ÒòΪÀ©Õ¹ºóµÄÑÜÉú¡¡
Àà¡°ÀàËÆÓÚ¡±»ù´¡Àࡪ¡ªËüÃÇÓÐÏàͬµÄ»ù´¡½Ó¿Ú¡ª¡ªµ«ËüÔö¼ÓÁËһЩÌØÐÔ£¬ÒªÇóÓöîÍâµÄ·½·¨¼ÓÒÔʵÏÖ¡£Èç¡¡
ÏÂËùʾ£º¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡205¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡207¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
¾¡¹ÜÕâÊÇÒ»ÖÖÓÐÓúÍÃ÷ÖǵÄ×ö·¨£¨ÓɾßÌåµÄ»·¾³¾ö¶¨£©£¬µ«ËüÒ²ÓÐÒ»¸öȱµã£ºÑÜÉúÀàÖжԽӿÚÀ©Õ¹µÄÄÇÒ»²¿¡¡
·Ö²»¿ÉÔÚ»ù´¡ÀàÖÐʹÓá£ËùÒÔÒ»µ©ÉÏËÝÔìÐÍ£¬¾Í²»¿ÉÔÙµ÷ÓÃз½·¨£º¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
ÈôÔÚ´Ëʱ²»½øÐÐÉÏËÝÔìÐÍ£¬Ôò²»»á³öÏÖ´ËÀàÎÊÌâ¡£µ«ÔÚÐí¶àÇé¿öÏ£¬¶¼ÐèÒªÖØкËʵ¶ÔÏóµÄ׼ȷÀàÐÍ£¬Ê¹×Ô¡¡
¼ºÄÜ·ÃÎÊÄǸöÀàÐ͵ÄÀ©Õ¹·½·¨¡£ÔÚºóÃæµÄС½ÚÀÎÒÃǾßÌå½²ÊöÁËÕâÊÇÈçºÎʵÏֵġ£¡¡¡¡
7¡£8¡£2¡¡¡¡ÏÂËÝÔìÐÍÓëÔËÐÐÆÚÀàÐͱêʶ¡¡¡¡
ÓÉÓÚÎÒÃÇÔÚÉÏËÝÔìÐÍ£¨Ôڼ̳нṹÖÐÏòÉÏÒƶ¯£©Æڼ䶪ʧÁ˾ßÌåµÄÀàÐÍÐÅÏ¢£¬ËùÒÔΪÁË»ñÈ¡¾ßÌåµÄÀàÐÍÐÅ¡¡
Ï¢¡ª¡ªÒ༴ÔÚ·Ö¼¶½á¹¹ÖÐÏòÏÂÒƶ¯¡ª¡ªÎÒÃDZØÐëʹÓá¡¡¡¡°ÏÂËÝÔìÐÍ¡±¼¼Êõ¡£È»¶ø£¬ÎÒÃÇÖªµÀÒ»¸öÉÏËÝÔìÐͿ϶¨¡¡
ÊÇ°²È«µÄ£»»ù´¡À಻¿ÉÄÜÔÙÓµÓÐÒ»¸ö±ÈÑÜÉúÀà¸ü´óµÄ½Ó¿Ú¡£Òò´Ë£¬ÎÒÃÇͨ¹ý»ù´¡Àà½Ó¿Ú·¢Ë͵ÄÿһÌõÏûÏ¢¶¼¡¡
¿Ï¶¨Äܹ»½ÓÊÕµ½¡£µ«ÔÚ½øÐÐÏÂËÝÔìÐ͵Äʱºò£¬ÎÒÃÇ£¨¾Ù¸öÀý×ÓÀ´Ëµ£©²¢²»ÕæµÄÖªµÀÒ»¸ö¼¸ºÎÐÎ״ʵ¼ÊÊÇÒ»¸ö¡¡
Ô²£¬ËüÍêÈ«¿ÉÄÜÊÇÒ»¸öÈý½ÇÐΡ¢·½ÐλòÕßÆäËûÐÎ×´¡£¡¡¡¡
¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡206¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡208¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡
Ϊ½â¾öÕâ¸öÎÊÌ⣬±ØÐëÓÐÒ»ÖÖ°ì·¨Äܹ»±£Ö¤ÏÂËÝÔìÐÍÕýÈ·½øÐС£Ö»ÓÐÕâÑù£¬ÎÒÃDzŲ»»áðȻÔìÐͳÉÒ»ÖÖ´íÎó¡¡
µÄÀàÐÍ£¬È»ºó·¢³öÒ»Ìõ¶ÔÏ󲻿ÉÄÜÊÕµ½µÄÏûÏ¢¡£ÕâÑù×öÊǷdz£²»°²È«µÄ¡£¡¡¡¡
ÔÚijЩÓïÑÔÖУ¨Èç¡¡C£«£«£©£¬ÎªÁ˽øÐб£Ö¤¡°ÀàÐÍ°²È«¡±µÄÏÂËÝÔìÐÍ£¬±ØÐë²ÉÈ¡ÌØÊâµÄ²Ù×÷¡£µ«ÔÚJava¡¡ÖУ¬Ëù¡¡
ÓÐÔìÐͶ¼»á×Ô¶¯µÃµ½¼ì²éºÍºËʵ£¡ËùÒÔ¼´Ê¹ÎÒÃÇÖ»ÊǽøÐÐÒ»´ÎÆÕͨµÄÀ¨»¡ÔìÐÍ£¬½øÈëÔËÐÐÆÚÒÔºó£¬ÈÔÈ»»áºÁ¡¡
ÎÞÁôÇéµØ¶ÔÕâ¸öÔìÐͽøÐмì²é£¬±£Ö¤ËüµÄÈ·ÊÇÎÒÃÇÏ£ÍûµÄÄÇÖÖÀàÐÍ¡£Èç¹û²»ÊÇ£¬¾Í»áµÃµ½Ò»¸ö¡¡
ClassCastException¡¡£¨ÀàÔìÐÍÎ¥Àý£©¡£ÔÚÔËÐÐÆÚ¼ä¶ÔÀàÐͽøÐмì²éµÄÐÐΪ½Ð×÷¡°ÔËÐÐÆÚÀàÐͱêʶ¡±¡¡
¡¡£¨RTTI¡¡£©¡£ÏÂÃæÕâ¸öÀý×ÓÏò´ó¼ÒÑÝʾÁËRTTI¡¡µÄÐÐΪ£º¡¡¡¡
¡¡¡¡
//£º¡¡RTTI¡£java¡¡¡¡
//¡¡Downcasting¡¡&¡¡Run¡Time¡¡Type¡¡¡¡
//¡¡Identification¡¡£¨RTTI£©¡¡¡¡
import¡¡java¡£util¡£*£»¡¡¡¡
¡¡¡¡
class¡¡Useful¡¡£û¡¡¡¡
¡¡¡¡public¡¡void¡¡f£¨£©¡¡£û£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡g£¨£©¡¡£û£ý¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
class¡¡MoreUseful¡¡extends¡¡Useful¡¡£û¡¡¡¡
¡¡¡¡public¡¡void¡¡f£¨£©¡¡£û£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡g£¨£©¡¡£û£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡u£¨£©¡¡£û£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡v£¨£©¡¡£û£ý¡¡¡¡
¡¡¡¡public¡¡void¡¡w£¨£©¡¡£û£ý¡¡¡¡
£ý¡¡¡¡
¡¡¡¡
public¡¡class¡¡RTTI¡¡£û¡¡¡¡
¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡Useful£§£§¡¡x¡¡=¡¡£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡Useful£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡new¡¡MoreUseful£¨£©¡¡¡¡
¡¡¡¡¡¡¡¡£ý£»¡¡¡¡
¡¡¡¡¡¡¡¡x£§0£§¡£f£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡x£§1£§¡£g£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡//¡¡pile¡time£º¡¡method¡¡not¡¡found¡¡in¡¡Useful£º¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡207¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡209¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡//£¡¡¡x£§1£§¡£u£¨£©£»¡¡¡¡
¡¡¡¡¡¡¡¡£¨£¨MoreUseful£©x£§1£§£©¡£u£¨£©£»¡¡//¡¡Downcast/RTTI¡¡¡¡
¡¡¡¡¡¡¡¡£¨£¨MoreUseful£©x£§0£§£©¡£u£¨£©£»¡¡//¡¡Exception¡¡thrown¡¡¡¡
¡¡¡¡£ý¡¡¡¡
£ý¡¡///£º~¡¡¡¡
¡¡¡¡
ºÍÔÚʾÒâͼÖÐÒ»Ñù£¬MoreUseful¡¡£¨¸üÓÐÓõģ©¶ÔUseful¡¡£¨ÓÐÓõģ©µÄ½Ó¿Ú½øÐÐÁËÀ©Õ¹¡£µ«ÓÉÓÚËüÊǼ̳ÐÀ´¡¡
µÄ£¬ËùÒÔÒ