ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
¸»Ê¿¿µÐ¡ËµÍø ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

Java±à³Ì˼ÏëµÚ4°æ[ÖÐÎÄ°æ](PDF¸ñʽ)-µÚ62²¿·Ö

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡



±ØÐë¶ÔÕâ¸öÎÊÌâ¼ÓÒԸ߶ÈÖØÊÓ¡£µÚÒ»¸öҪעÒâµÄÊÇ»ùÓÚ×é¼þµÄ³ÌÐòÉè¼Æ¡£ÔÚÕâÖÖ»·¾³Ï£¬ÎÒÃÇÓá°¿ìËÙÓ¦Óá¡

¿ª·¢¡±£¨RAD£©Ä£ÐÍÀ´¹¹½¨³ÌÐòÏîÄ¿¡£RAD¡¡Ò»°ãÊÇÔÚÓ¦ÓóÌÐò¹¹½¨¹¤¾ßÖÐÄÚ½¨µÄ¡£ÕâÊDZàÖƳÌÐòµÄÒ»ÖÖ¿ÉÊÓ;¡¡

¾¶£¨ÔÚÆÁÄ»ÉÏÒÔ´°ÌåµÄÐÎʽ³öÏÖ£©¡£¿É½«´ú±í²»Í¬×é¼þµÄͼ±êÍÏÒ·µ½´°ÌåÖС£Ëæºó£¬Í¨¹ýÉ趨ÕâЩ×é¼þµÄÊô¡¡

ÐÔ»òÕßÖµ£¬½øÐÐÕýÈ·µÄÅäÖá£Éè¼ÆÆÚ¼äµÄÅäÖÃÒªÇóÈκÎ×é¼þ¶¼ÊÇ¿ÉÒÔ¡°Àýʾ¡±µÄ£¨¼´¿ÉÒÔ×ÔÓÉ»ñµÃËüÃǵÄʵ¡¡

Àý£©¡£ÕâЩ×é¼þÒ²Òª½Òʾ³ö×Ô¼ºµÄÒ»²¿·ÖÄÚÈÝ£¬ÔÊÐí³ÌÐòÔ±¶ÁÈ¡ºÍÉèÖø÷ÖÖÖµ¡£´ËÍ⣬ÓÃÓÚ¿ØÖÆ¡¡GUI¡¡Ê¼þµÄ¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡343¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡345¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

×é¼þ±ØÐë½Òʾ³öÓëÏàÓ¦µÄ·½·¨ÓйصÄÐÅÏ¢£¬ÒÔ±ãRAD¡¡»·¾³°ïÖú³ÌÐòÔ±ÓÃ×Ô¼ºµÄ´úÂ븲¸ÇÕâЩÓÉʼþÇý¶¯µÄ·½¡¡

·¨¡£¡°·´É䡱ÌṩÁËÒ»ÖÖÌØÊâµÄ»úÖÆ£¬¿ÉÒÔÕì²â¿ÉÓõķ½·¨£¬²¢²úÉú·½·¨Ãû¡£Í¨¹ý¡¡Java¡¡Beans¡¡£¨µÚ13Õ½«¡¡

Ïêϸ½éÉÜ£©£¬Java¡¡1¡£1¡¡ÎªÕâÖÖ»ùÓÚ×é¼þµÄ³ÌÐòÉè¼ÆÌṩÁËÒ»¸ö»ù´¡½á¹¹¡£¡¡¡¡

ÔÚÔËÐÐÆÚ²éѯÀàÐÅÏ¢µÄÁíÒ»¸öÔ­¶¯Á¦ÊÇͨ¹ýÍøÂç´´½¨ÓëÖ´ÐÐλÓÚÔ¶³ÌϵͳÉϵĶÔÏó¡£Õâ¾Í½Ð×÷¡°Ô¶³Ì·½·¨µ÷¡¡

Óá±£¨RMI£©£¬ËüÔÊÐíJava¡¡³ÌÐò£¨°æ±¾¡¡1¡£1¡¡ÒÔÉÏ£©Ê¹ÓÃÓɶą̀»úÆ÷·¢²¼»ò·Ö²¼µÄ¶ÔÏó¡£ÕâÖÖ¶ÔÏóµÄ·Ö²¼¿ÉÄÜ¡¡

ÊÇÓɶ෽ÃæµÄÔ­ÒòÒýÆðµÄ£º¿ÉÄÜÒª×öÒ»¼þ¼ÆËãÃܼ¯Ð͵Ť×÷£¬Ïë¶ÔËü½øÐзָÈô¦ÓÚ¿ÕÏÐ״̬µÄÆäËû»úÆ÷¡¡

·Öµ£²¿·Ö¹¤×÷£¬´Ó¶ø¼Ó¿ì´¦Àí½ø¶È¡£Ä³Ð©Çé¿öÏ£¬¿ÉÄÜÐèÒª½«ÓÃÓÚ¿ØÖÆÌض¨ÀàÐÍÈÎÎñ£¨±ÈÈç¶à²ã¿Í»§£¯·þÎñ¡¡

Æ÷¼Ü¹¹Öеġ°ÔË×÷¹æÔò¡±£©µÄ´úÂë·ÅÖÃÔÚһ̨ÌØÊâµÄ»úÆ÷ÉÏ£¬Ê¹Õą̂»úÆ÷³ÉΪ¶ÔÄÇЩÐж¯½øÐÐÃèÊöµÄÒ»¸öͨ¡¡

Óô¢²ØËù¡£¶øÇÒ¿ÉÒÔ·½±ãµØÐÞ¸ÄÕâ¸ö³¡Ëù£¬Ê¹Æä¶ÔϵͳÄÚµÄËùÓз½Ãæ²úÉúÓ°Ï죨ÕâÊÇÒ»ÖÖÌرðÓÐÓõÄÉè¼Æ˼¡¡

·£¬ÒòΪ»úÆ÷ÊǶÀÁ¢´æÔڵģ¬ËùÒÔÄÜÇáÒ×ÐÞ¸ÄÈí¼þ£¡£©¡£·Ö²¼Ê½¼ÆËãÒ²Äܸü³ä·ÖµØ·¢»ÓijЩרÓÃÓ²¼þµÄ×÷¡¡

Óã¬ËüÃÇÌرðÉó¤Ö´ÐÐһЩÌض¨µÄÈÎÎñ¡ª¡ªÀýÈç¾ØÕóÄæת¡ª¡ªµ«¶Ô³£¹æ±à³ÌÀ´ËµÈ´ÏÔµÃÌ«¿äÕÅ»òÕßÌ«°º¹ó¡¡

ÁË¡£¡¡¡¡

ÔÚJava¡¡1¡£1¡¡ÖУ¬Class¡¡Àࣨ±¾ÕÂÇ°ÃæÒÑÓÐÏêϸÂÛÊö£©µÃµ½ÁËÀ©Õ¹£¬¿ÉÒÔÖ§³Ö¡°·´É䡱µÄ¸ÅÄî¡£Õë¶Ô¡¡Field£¬¡¡

Method¡¡ÒÔ¼°Constructor¡¡Àࣨÿ¸ö¶¼ÊµÏÖÁË¡¡Memberinterface¡ª¡ª³ÉÔ±½Ó¿Ú£©£¬ËüÃǶ¼ÐÂÔöÁËÒ»¸ö¿â£º¡¡

java¡£lang¡£reflect¡£ÕâЩÀàÐ͵ĶÔÏó¶¼ÊÇ¡¡JVM¡¡ÔÚÔËÐÐÆÚ´´½¨µÄ£¬ÓÃÓÚ´ú±íδ֪ÀàÀï¶ÔÓ¦µÄ³ÉÔ±¡£ÕâÑù±ã¿ÉÓá¡

¹¹½¨Æ÷´´½¨Ð¶ÔÏó£¬Óá¡get£¨£©ºÍ¡¡set£¨£©·½·¨¶ÁÈ¡ºÍÐÞ¸ÄÓë¡¡Field¡¡¶ÔÏó¹ØÁªµÄ×ֶΣ¬ÒÔ¼°Óá¡invoke£¨£©·½·¨µ÷Óá¡

ÓëMethod¡¡¶ÔÏó¹ØÁªµÄ·½·¨¡£´ËÍ⣬ÎÒÃǿɵ÷Ó÷½·¨¡¡getFields£¨£©£¬getMethods£¨£©£¬getConstructors£¨£©£¬·Ö¡¡

±ð·µ»ØÓÃÓÚ±íʾ×ֶΡ¢·½·¨ÒÔ¼°¹¹½¨Æ÷µÄ¶ÔÏóÊý×飨ÔÚÁª»úÎĵµÖУ¬»¹¿ÉÕÒµ½ÓëClass¡¡ÀàÓйصĸü¶àµÄ×Ê¡¡

ÁÏ£©¡£Òò´Ë£¬ÄäÃû¶ÔÏóµÄÀàÐÅÏ¢¿ÉÔÚÔËÐÐÆÚ±»ÍêÕûµÄ½Ò¶³öÀ´£¬¶øÔÚ±àÒëÆڼ䲻ÐèÒªÖªµÀÈκζ«Î÷¡£¡¡¡¡

´ó¼ÒÒªÈÏʶµÄºÜÖØÒªµÄÒ»µãÊÇ¡°·´É䡱²¢Ã»ÓÐʲôÉñÆæµÄµØ·½¡£Í¨¹ý¡°·´É䡱ͬһ¸öδ֪ÀàÐ͵ĶÔÏó´ò½»µÀ¡¡

ʱ£¬JVM¡¡Ö»ÊǼòµ¥µØ¼ì²éÄǸö¶ÔÏ󣬲¢µ÷²éËü´ÓÊôÓÚÄĸöÌض¨µÄÀࣨ¾ÍÏóÒÔÇ°µÄRTTI¡¡ÄÇÑù£©¡£µ«ÔÚÕâÖ®ºó£¬¡¡

ÔÚÎÒÃÇ×öÆäËûÈκÎÊÂÇé֮ǰ£¬Class¡¡¶ÔÏó±ØÐëÔØÈë¡£Òò´Ë£¬ÓÃÓÚÄÇÖÖÌض¨ÀàÐ͵ġ£classÎļþ±ØÐëÄÜÓÉ¡¡JVM¡¡µ÷¡¡

Óã¨ÒªÃ´ÔÚ±¾µØ»úÆ÷ÄÚ£¬ÒªÃ´¿ÉÒÔͨ¹ýÍøÂçÈ¡µÃ£©¡£ËùÒÔ¡¡RTTI¡¡ºÍ¡°·´É䡱֮¼äΨһµÄÇø±ð¾ÍÊǶԡ¡RTTI¡¡À´¡¡

˵£¬±àÒëÆ÷»áÔÚ±àÒëÆÚ´ò¿ªºÍ¼ì²é¡£classÎļþ¡£»»¾ä»°Ëµ£¬ÎÒÃÇ¿ÉÒÔÓá°ÆÕͨ¡±·½Ê½µ÷ÓÃÒ»¸ö¶ÔÏóµÄËùÓз½¡¡

·¨£»µ«¶Ô¡°·´É䡱À´Ëµ£¬¡£class¡¡ÎļþÔÚ±àÒëÆÚ¼äÊDz»¿ÉʹÓõģ¬¶øÊÇÓÉÔËÐÐÆÚ»·¾³´ò¿ªºÍ¼ì²é¡£¡¡¡¡



11¡£3¡£1¡¡Ò»¸öÀà·½·¨ÌáÈ¡Æ÷¡¡¡¡



ºÜÉÙÐèÒªÖ±½ÓʹÓ÷´É乤¾ß£»Ö®ËùÒÔÔÚÓïÑÔÖÐÌṩËüÃÇ£¬½ö½öÊÇΪÁËÖ§³ÖÆäËûJava¡¡ÌØÐÔ£¬±ÈÈç¶ÔÏóÐòÁл¯¡¡

¡¡£¨µÚ10Õ½éÉÜ£©¡¢Java¡¡Beans¡¡ÒÔ¼°RMI¡¡£¨±¾ÕºóÃæ½éÉÜ£©¡£µ«ÊÇ£¬ÎÒÃÇÐí¶àʱºòÈÔÈ»ÐèÒª¶¯Ì¬ÌáÈ¡ÓëÒ»¸öÀà¡¡

ÓйصÄ×ÊÁÏ¡£ÆäÖÐÌرðÓÐÓõŤ¾ß±ãÊÇÒ»¸öÀà·½·¨ÌáÈ¡Æ÷¡£ÕýÈçÇ°ÃæÖ¸³öµÄÄÇÑù£¬Èô¼ìÊÓÀඨÒåÔ´Âë»òÕßÁª¡¡

»úÎĵµ£¬Ö»ÄÜ¿´µ½ÔÚÄǸöÀඨÒåÖỶ¨Òå»ò¸²¸ÇµÄ·½·¨£¬»ù´¡ÀàÄÇÀﻹÓдóÁ¿×ÊÁÏÄò»µ½¡£ÐÒÔ˵ÄÊÇ£¬¡°·´¡¡

É䡱×öµ½ÁËÕâÒ»µã£¬¿ÉÓÃËüдһ¸ö¼òµ¥µÄ¹¤¾ß£¬ÁîÆä×Ô¶¯Õ¹Ê¾Õû¸ö½Ó¿Ú¡£ÏÂÃæ±ãÊǾßÌåµÄ³ÌÐò£º¡¡¡¡

¡¡¡¡

//£º¡¡ShowMethods¡£java¡¡¡¡

//¡¡Using¡¡Java¡¡1¡£1¡¡reflection¡¡to¡¡show¡¡all¡¡the¡¡¡¡¡¡

//¡¡methods¡¡of¡¡a¡¡class£»¡¡even¡¡if¡¡the¡¡methods¡¡are¡¡¡¡¡¡

//¡¡defined¡¡in¡¡the¡¡base¡¡class¡£¡¡¡¡

import¡¡java¡£lang¡£reflect¡£*£»¡¡¡¡

¡¡¡¡

public¡¡class¡¡ShowMethods¡¡£û¡¡¡¡

¡¡¡¡static¡¡final¡¡String¡¡usage¡¡=¡¡¡¡

¡¡¡¡¡¡¡¡¡¨usage£º¡¡n¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨ShowMethods¡¡qualified¡£class¡£namen¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨To¡¡show¡¡all¡¡methods¡¡in¡¡class¡¡or£º¡¡n¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨ShowMethods¡¡qualified¡£class¡£name¡¡wordn¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨To¡¡search¡¡for¡¡methods¡¡involving¡¡'word'¡¨£»¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡if£¨args¡£length¡¡¡¶¡¡1£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨usage£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡try¡¡£û¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡344¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡346¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡Class¡¡c¡¡=¡¡Class¡£forName£¨args£§0£§£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡Method£§£§¡¡m¡¡=¡¡c¡£getMethods£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡Constructor£§£§¡¡ctor¡¡=¡¡c¡£getConstructors£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡if£¨args¡£length¡¡==¡¡1£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡m¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨m£§i£§¡£toString£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡ctor¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨ctor£§i£§¡£toString£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡else¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡m¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨m£§i£§¡£toString£¨£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£indexOf£¨args£§1£§£©£¡=¡¡¡­1£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨m£§i£§¡£toString£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡ctor¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨ctor£§i£§¡£toString£¨£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£indexOf£¨args£§1£§£©£¡=¡¡¡­1£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨ctor£§i£§¡£toString£¨£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡catch¡¡£¨ClassNotFoundException¡¡e£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨No¡¡such¡¡class£º¡¡¡¨¡¡£«¡¡e£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

Class¡¡·½·¨getMethods£¨£©ºÍ¡¡getConstructors£¨£©¿ÉÒԷֱ𷵻ØMethod¡¡ºÍConstructor¡¡µÄÒ»¸öÊý×顣ÿ¸öÀ඼¡¡

ÌṩÁ˽øÒ»²½µÄ·½·¨£¬¿É½âÎö³öËüÃÇËù´ú±íµÄ·½·¨µÄÃû×Ö¡¢²ÎÊýÒÔ¼°·µ»ØÖµ¡£µ«Ò²¿ÉÒÔÏóÕâÑùÒ»ÑùֻʹÓá¡

toString£¨£©£¬Éú³ÉÒ»¸öº¬ÓÐÍêÕû·½·¨Ç©ÃûµÄ×Ö´®¡£´úÂëÊ£ÓàµÄ²¿·ÖÖ»ÊÇÓÃÓÚÌáÈ¡ÃüÁîÐÐÐÅÏ¢£¬ÅжÏÌض¨µÄÇ©¡¡

ÃûÊÇ·ñÓëÎÒÃǵÄÄ¿±ê×Ö´®Ïà·û£¨Ê¹Óá¡indexOf£¨£©£©£¬²¢´òÓ¡³ö½á¹û¡£¡¡¡¡

ÕâÀï±ãÓõ½ÁË¡°·´É䡱¼¼Êõ£¬ÒòΪÓÉClass¡£forName£¨£©²úÉúµÄ½á¹û²»ÄÜÔÚ±àÒëÆÚ¼ä»ñÖª£¬ËùÒÔËùÓз½·¨Ç©Ãû¡¡

ÐÅÏ¢¶¼»áÔÚÔËÐÐÆÚ¼äÌáÈ¡¡£ÈôÑо¿Ò»ÏÂÁª»úÎĵµÖйØÓÚ¡°·´É䡱£¨Reflection£©µÄÄDz¿·ÖÎÄ×Ö£¬¾Í»á·¢ÏÖËü¡¡

ÒÑÌṩÁË×ã¹»¶àµÄÖ§³Ö£¬¿É¶ÔÒ»¸ö±àÒëÆÚÍêȫδ֪µÄ¶ÔÏó½øÐÐʵ¼ÊµÄÉèÖÃÒÔ¼°·¢³ö·½·¨µ÷Óá£Í¬ÑùµØ£¬ÕâÒ²¡¡

ÊôÓÚ¼¸ºõÍêÈ«²»ÓÃÎÒÃDzÙÐĵÄÒ»¸ö²½Ö衪¡ªJava¡¡×Ô¼º»áÀûÓÃÕâÖÖÖ§³Ö£¬ËùÒÔ³ÌÐòÉè¼Æ»·¾³Äܹ»¿ØÖÆJava¡¡¡¡

Beans¡ª¡ªµ«ËüÎÞÂÛÈçºÎ¶¼ÊǷdz£ÓÐȤµÄ¡£¡¡¡¡

Ò»¸öÓÐȤµÄÊÔÑéÊÇÔËÐС¡java¡¡ShowMehods¡¡ShowMethods¡£ÕâÑù×ö¿ÉµÃµ½Ò»¸öÁÐ±í£¬ÆäÖаüÀ¨Ò»¸öpublic¡¡Ä¬ÈÏ¡¡

¹¹½¨Æ÷£¬¾¡¹ÜÎÒÃÇÔÚ´úÂëÖп´¼û²¢Ã»Óж¨ÒåÒ»¸ö¹¹½¨Æ÷¡£ÎÒÃÇ¿´µ½µÄÊÇÓɱàÒëÆ÷×Ô¶¯ºÏ³ÉµÄÄÇÒ»¸ö¹¹½¨Æ÷¡£¡¡

Èç¹ûËæÖ®½«¡¡ShowMethods¡¡ÉèΪһ¸ö·Ç¡¡public¡¡Àࣨ¼´»»³É¡°ÓѺá±Àࣩ£¬ºÏ³ÉµÄĬÈϹ¹½¨Æ÷±ã²»»áÔÚÊä³ö½á¹û¡¡

ÖгöÏÖ¡£ºÏ³ÉµÄĬÈϹ¹½¨Æ÷»á×Ô¶¯»ñµÃÓëÀàÒ»ÑùµÄ·ÃÎÊȨÏÞ¡£¡¡¡¡

ShowMethods¡¡µÄÊä³öÈÔÈ»ÓÐЩ¡°²»Ë¬¡±¡£ÀýÈ磬ÏÂÃæÊÇͨ¹ýµ÷Óá¡java¡¡ShowMethods¡¡java¡£lang¡£StringµÃµ½¡¡

µÄÊä³ö½á¹ûµÄÒ»²¿·Ö£º¡¡¡¡

¡¡¡¡

public¡¡boolean¡¡¡¡¡¡

¡¡¡¡java¡£lang¡£String¡£startsWith£¨java¡£lang¡£String£»int£©¡¡¡¡

public¡¡boolean¡¡¡¡¡¡

¡¡¡¡java¡£lang¡£String¡£startsWith£¨java¡£lang¡£String£©¡¡¡¡

public¡¡boolean¡¡¡¡

¡¡¡¡java¡£lang¡£String¡£endsWith£¨java¡£lang¡£String£©¡¡¡¡

¡¡¡¡

ÈôÄÜÈ¥µôÏó¡¡java¡£lang¡¡ÕâÑùµÄÏÞ¶¨´Ê£¬½á¹ûÏÔÈ»»á¸üÁîÈËÂúÒâ¡£ÓмøÓÚ´Ë£¬¿ÉÒýÈëÉÏÒ»Õ½éÉܵġ¡

StreamTokenizer¡¡À࣬½â¾öÕâ¸öÎÊÌ⣺¡¡¡¡

¡¡¡¡

//£º¡¡ShowMethodsClean¡£java¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡345¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡347¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

//¡¡ShowMethods¡¡with¡¡the¡¡qualifiers¡¡stripped¡¡¡¡

//¡¡to¡¡make¡¡the¡¡results¡¡easier¡¡to¡¡read¡¡¡¡

import¡¡java¡£lang¡£reflect¡£*£»¡¡¡¡

import¡¡java¡£io¡£*£»¡¡¡¡

¡¡¡¡

public¡¡class¡¡ShowMethodsClean¡¡£û¡¡¡¡

¡¡¡¡static¡¡final¡¡String¡¡usage¡¡=¡¡¡¡

¡¡¡¡¡¡¡¡¡¨usage£º¡¡n¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨ShowMethodsClean¡¡qualified¡£class¡£namen¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨To¡¡show¡¡all¡¡methods¡¡in¡¡class¡¡or£º¡¡n¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨ShowMethodsClean¡¡qualif¡£class¡£name¡¡wordn¡¨¡¡£«¡¡¡¡

¡¡¡¡¡¡¡¡¡¨To¡¡search¡¡for¡¡methods¡¡involving¡¡'word'¡¨£»¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡if£¨args¡£length¡¡¡¶¡¡1£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨usage£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£exit£¨0£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡try¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡Class¡¡c¡¡=¡¡Class¡£forName£¨args£§0£§£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡Method£§£§¡¡m¡¡=¡¡c¡£getMethods£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡Constructor£§£§¡¡ctor¡¡=¡¡c¡£getConstructors£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡//¡¡Convert¡¡to¡¡an¡¡array¡¡of¡¡cleaned¡¡Strings£º¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡String£§£§¡¡n¡¡=¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡new¡¡String£§m¡£length¡¡£«¡¡ctor¡£length£§£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡m¡£length£»¡¡i£«£«£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String¡¡s¡¡=¡¡m£§i£§¡£toString£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡n£§i£§¡¡=¡¡StripQualifiers¡£strip£¨s£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡for£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡ctor¡£length£»¡¡i£«£«£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡String¡¡s¡¡=¡¡ctor£§i£§¡£toString£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡n£§i¡¡£«¡¡m¡£length£§¡¡=¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡StripQualifiers¡£strip£¨s£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡if£¨args¡£length¡¡==¡¡1£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡n¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨n£§i£§£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡else¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡for¡¡£¨int¡¡i¡¡=¡¡0£»¡¡i¡¡¡¶¡¡n¡£length£»¡¡i£«£«£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡if£¨n£§i£§¡£indexOf£¨args£§1£§£©£¡=¡¡¡­1£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨n£§i£§£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡catch¡¡£¨ClassNotFoundException¡¡e£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨No¡¡such¡¡class£º¡¡¡¨¡¡£«¡¡e£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡¡¡

¡¡¡¡

class¡¡StripQualifiers¡¡£û¡¡¡¡

¡¡¡¡private¡¡StreamTokenizer¡¡st£»¡¡¡¡

¡¡¡¡public¡¡StripQualifiers£¨String¡¡qualified£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡st¡¡=¡¡new¡¡StreamTokenizer£¨¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡new¡¡StringReader£¨qualified£©£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡st¡£ordinaryChar£¨'¡¡'£©£»¡¡//¡¡Keep¡¡the¡¡spaces¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡346¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡348¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡String¡¡getNext£¨£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡String¡¡s¡¡=¡¡null£»¡¡¡¡

¡¡¡¡¡¡¡¡try¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡if£¨st¡£nextToken£¨£©¡¡£¡=¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡StreamTokenizer¡£TT_EOF£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡switch£¨st¡£ttype£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡case¡¡StreamTokenizer¡£TT_EOL£º¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s¡¡=¡¡null£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡case¡¡StreamTokenizer¡£TT_NUMBER£º¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s¡¡=¡¡Double¡£toString£¨st¡£nval£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡case¡¡StreamTokenizer¡£TT_WORD£º¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s¡¡=¡¡new¡¡String£¨st¡£sval£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡default£º¡¡//¡¡single¡¡character¡¡in¡¡ttype¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡s¡¡=¡¡String¡£valueOf£¨¡¡£¨char£©st¡£ttype£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡catch£¨IOException¡¡e£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡System¡£out¡£println£¨e£©£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡s£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡static¡¡String¡¡strip£¨String¡¡qualified£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡StripQualifiers¡¡sq¡¡=¡¡¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡new¡¡StripQualifiers£¨qualified£©£»¡¡¡¡

¡¡¡¡¡¡¡¡String¡¡s¡¡=¡¡¡¨¡¨£»¡¡si£»¡¡¡¡

¡¡¡¡¡¡¡¡while£¨£¨si¡¡=¡¡sq¡£getNext£¨£©£©¡¡£¡=¡¡null£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡int¡¡lastDot¡¡=¡¡si¡£lastIndexOf£¨'¡£'£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡if£¨lastDot¡¡£¡=¡¡¡­1£©¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡si¡¡=¡¡si¡£substring£¨lastDot¡¡£«¡¡1£©£»¡¡¡¡

¡¡¡¡¡¡¡¡¡¡¡¡s¡¡£«=¡¡si£»¡¡¡¡

¡¡¡¡¡¡¡¡£ý¡¡¡¡

¡¡¡¡¡¡¡¡return¡¡s£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

ShowMethodsClean¡¡·½·¨·Ç³£½Ó½üÇ°Ò»¸öShowMethods£¬Ö»ÊÇËüÈ¡µÃÁËMethod¡¡ºÍConstructor¡¡Êý×飬²¢½«ËüÃÇ¡¡

ת»»³Éµ¥¸ö¡¡String¡¡Êý×é¡£Ëæºó£¬Ã¿¸öÕâÑùµÄ¡¡String¡¡¶ÔÏó¶¼ÔÚ¡¡StripQualifiers¡£Strip£¨£©Àï¡°¹ý¡±Ò»±é£¬É¾¡¡

³ýËùÓз½·¨ÏÞ¶¨´Ê¡£ÕýÈç´ó¼Ò¿´µ½µÄÄÇÑù£¬´ËʱÓõ½ÁËStreamTokenizer¡¡ºÍString¡¡À´Íê³ÉÕâ¸ö¹¤×÷¡£¡¡¡¡

¼ÙÈç¼Ç²»µÃÒ»¸öÀàÊÇ·ñÓÐÒ»¸öÌض¨µÄ·½·¨£¬¶øÇÒ²»ÏëÔÚÁª»úÎĵµÀïÖð²½¼ì²éÀà½á¹¹£¬»òÕß²»ÖªµÀÄǸöÀàÊÇ·ñ¡¡

ÄܶÔij¸ö¶ÔÏó£¨ÈçColor¡¡¶ÔÏó£©×öij¼þÊÂÇ飬¸Ã¹¤¾ß±ã¿É½ÚÊ¡´óÁ¿±à³Ìʱ¼ä¡£¡¡¡¡

µÚ¡¡17¡¡ÕÂÌṩÁËÕâ¸ö³ÌÐòµÄÒ»¸öGUI¡¡°æ±¾£¬¿ÉÔÚ×Ô¼ºÐ´´úÂëµÄʱºòÔËÐÐËü£¬ÒÔ±ã¿ìËÙ²éÕÒÐèÒªµÄ¶«Î÷¡£¡¡¡¡



11¡£4¡¡×ܽᡡ¡¡



ÀûÓÃRTTI¡¡¿É¸ù¾ÝÒ»¸öÄäÃûµÄ»ù´¡Àà¾ä±úµ÷²é³öÀàÐÍÐÅÏ¢¡£µ«ÕýÊÇÓÉÓÚÕâ¸öÔ­Òò£¬ÐÂÊÖÃǼ«Ò×ÎóÓÃËü£¬ÒòΪÓС¡

Щʱºò¶àÐÎÐÔ·½·¨±ã×ã¹»ÁË¡£¶ÔÄÇЩÒÔÇ°Ï°¹ß³ÌÐò»¯±à³ÌµÄÈËÀ´Ëµ£¬¼«Ò×½«ËûÃǵijÌÐò×éÖ¯³ÉһϵÁÐswitch¡¡

Óï¾ä¡£ËûÃÇ¿ÉÄÜÓá¡RTTI¡¡×öµ½ÕâÒ»µã£¬´Ó¶øÔÚ´úÂ뿪·¢ºÍά»¤ÖÐËðʧ¶àÐÎÐÔ¼¼ÊõµÄÖØÒª¼ÛÖµ¡£Java¡¡µÄÒªÇóÊÇ¡¡

ÈÃÎÒÃǾ¡¿ÉÄܵزÉÓöàÐÎÐÔ£¬Ö»ÓÐÔÚ¼«ÌرðµÄÇé¿öϲÅʹÓÃRTTI¡¡¡£¡¡¡¡

µ«ÎªÁËÀûÓöàÐÎÐÔ£¬ÒªÇóÎÒÃÇÓµÓжԻù´¡ÀඨÒåµÄ¿ØÖÆȨ£¬ÒòΪÓÐЩʱºòÔÚ³ÌÐò·¶Î§Ö®ÄÚ£¬¿ÉÄÜ·¢ÏÖ»ù´¡Àà¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡347¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡349¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

²¢Î´°üÀ¨ÎÒÃÇÏëÒªµÄ·½·¨¡£Èô»ù´¡ÀàÀ´×ÔÒ»¸ö¿â£¬»òÕßÓɱðµÄʲô¶«Î÷¿ØÖÆ×Å£¬RTTI¡¡±ãÊÇÒ»ÖֺܺõĽâ¾ö·½¡¡

°¸£º¿É¼Ì³ÐÒ»¸öÐÂÀàÐÍ£¬È»ºóÌí¼Ó×Ô¼ºµÄ¶îÍâ·½·¨¡£ÔÚ´úÂëµÄÆäËûµØ·½£¬¿ÉÒÔÕì²â×Ô¼ºµÄÌض¨ÀàÐÍ£¬²¢µ÷Óá¡

ÄǸöÌØÊâµÄ·½·¨¡£ÕâÑù×ö²»»áÆÆ»µ¶àÐÎÐÔÒÔ¼°³ÌÐòµÄÀ©Õ¹ÄÜÁ¦£¬ÒòΪÐÂÀàÐ͵ÄÌí¼Ó²»ÒªÇó²éÕÒ³ÌÐòÖеġ¡

switchÓï¾ä¡£µ«ÔÚÐèÒªÐÂÌØÐÔµÄÖ÷ÌåÖÐÌí¼ÓдúÂëʱ£¬¾Í±ØÐëÓá¡RTTI¡¡Õì²â×Ô¼ºÌض¨µÄÀàÐÍ¡£¡¡¡¡

´Óij¸öÌض¨ÀàµÄÀûÒæµÄ½Ç¶È³ö·¢£¬ÔÚ»ù´¡ÀàÀï¼ÓÈëÒ»¸öÌØÐԺ󣬿ÉÄÜÒâζ×Å´ÓÄǸö»ù´¡ÀàÑÜÉúµÄÆäËûËùÓÐÀà¡¡

¶¼±ØÐë»ñµÃһЩÎÞÒâÒåµÄ¡°¼¦Àß¡±¡£ÕâʹµÃ½Ó¿Ú±äµÃº¬ÒåÄ£ºý¡£ÈôÓÐÈË´ÓÄǸö»ù´¡Àà¼Ì³Ð£¬ÇÒ±ØÐ븲¸Ç³éÏó¡¡

·½·¨£¬ÕâÒ»ÏÖÏó±ã»áʹËûÃÇÏÝÈëÀ§ÈÅ¡£±ÈÈçÏÖÔÚÓÃÒ»¸öÀà½á¹¹À´±íʾÀÖÆ÷£¨Instrument£©¡£¼Ù¶¨ÎÒÃÇÏëÇå½à¡¡

¹ÜÏÒÀÖ¶ÓÖÐËùÓÐÊʵ±ÀÖÆ÷µÄͨÆøÒô˨£¨Spit¡¡Valve£©£¬´ËʱµÄÒ»¸ö°ì·¨ÊÇÔÚ»ù´¡ÀàInstrument¡¡ÖÐÖÃÈëÒ»¸ö¡¡

ClearSpitValve£¨£©·½·¨¡£µ«ÕâÑù×ö»áÔì³ÉÒ»¸öÎóÇø£¬ÒòΪËü°µÊ¾×Å´ò»÷ÀÖÆ÷ºÍµç×ÓÀÖÆ÷ÖÐÒ²ÓÐÒô˨¡£Õë¶ÔÕâ¡¡

ÖÖÇé¿ö£¬RTTI¡¡ÌṩÁËÒ»¸ö¸üºÏÀíµÄ½â¾ö·½°¸£¬¿É½«·½·¨ÖÃÈëÌض¨µÄÀàÖУ¨´ËʱÊÇWind¡¡£¬¼´¡°Í¨Æø¿Ú¡±£©¡ª¡ª¡¡

ÕâÑù×öÊÇ¿ÉÐеġ£µ«ÊÂʵÉÏÒ»ÖÖ¸üºÏÀíµÄ·½°¸Êǽ«¡¡prepareInstrument£¨£©ÖÃÈë»ù´¡ÀàÖС£³õѧÕ߸տªÊ¼Ê±Íù¡¡

Íù¿´²»µ½ÕâÒ»µã£¬Ò»°ã»áÈ϶¨×Ô¼º±ØÐëʹÓÃRTTI¡¡¡£¡¡¡¡

×îºó£¬RTTI¡¡ÓÐʱÄܽâ¾öЧÂÊÎÊÌâ¡£Èô´úÂë´óÁ¿ÔËÓÃÁ˶àÐÎÐÔ£¬µ«ÆäÖеÄÒ»¸ö¶ÔÏóÔÚÖ´ÐÐЧÂÊÉϺÜÓÐÎÊÌ⣬±ã¡¡

¿ÉÓÃRTTI¡¡ÕÒ³öÄǸöÀàÐÍ£¬È»ºóдһ¶ÎÊʵ±µÄ´úÂ룬¸Ä½øÆäЧÂÊ¡£¡¡¡¡



11¡£5¡¡Á·Ï°¡¡¡¡



£¨1£©¡¡Ð´Ò»¸ö·½·¨£¬ÏòËü´«µÝÒ»¸ö¶ÔÏó£¬Ñ­»·´òÓ¡³ö¶ÔÏó²ã´Î½á¹¹ÖеÄËùÓÐÀà¡£¡¡¡¡

£¨2£©¡¡ÔÚToyTest¡£java¡¡ÖУ¬½«Toy¡¡µÄĬÈϹ¹½¨Æ÷±ê¼Ç³É×¢ÊÍÐÅÏ¢£¬½âÊÍËæÖ®·¢ÉúµÄÊÂÇé¡£¡¡¡¡

£¨3£©¡¡Ð½¨Ò»ÖÖÀàÐ͵ļ¯ºÏ£¬ÁîÆäʹÓÃÒ»¸öVector¡£²¶»ñÖÃÈëÆäÖеĵÚÒ»¸ö¶ÔÏóµÄÀàÐÍ£¬È»ºó´ÓÄÇʱÆðÖ»ÔÊÐí¡¡

Óû§²åÈëÄÇÖÖÀàÐ͵ĶÔÏ󡣡¡¡¡

£¨4£©¡¡Ð´Ò»¸ö³ÌÐò£¬ÅжÏÒ»¸ö¡¡Char¡¡Êý×éÊôÓÚ»ù±¾Êý¾ÝÀàÐÍ£¬»¹ÊÇÒ»¸öÕæÕýµÄ¶ÔÏ󡣡¡¡¡

£¨5£©¡¡¸ù¾Ý±¾ÕµÄ˵Ã÷£¬ÊµÏÖ¡¡clearSpitValve£¨£©¡£¡¡¡¡

£¨6£©¡¡ÊµÏÖ±¾Õ½éÉܵÄrotate£¨Shape£©·½·¨£¬ÁîÆä¼ì²éÊÇ·ñÒѾ­ÐýתÁËÒ»¸öÔ²£¨ÈôÒÑÐýת£¬¾Í²»ÔÙÖ´ÐÐÐýת²Ù¡¡

×÷£©¡£¡¡¡¡



¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡348¡¡


¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­Page¡¡350¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡µÚ¡¡12¡¡Õ¡¡¡¡´«µÝºÍ·µ»Ø¶ÔÏó¡¡¡¡



¡¡¡¡

µ½Ä¿Ç°ÎªÖ¹£¬¶ÁÕßÓ¦¶Ô¶ÔÏóµÄ¡°´«µÝ¡±ÓÐÁËÒ»¸ö½ÏΪÉî¿ÌµÄÈÏʶ£¬¼Çסʵ¼Ê´«µÝµÄÖ»ÊÇÒ»¸ö¾ä±ú¡£¡¡¡¡

ÔÚÐí¶à³ÌÐòÉè¼ÆÓïÑÔÖУ¬ÎÒÃÇ¿ÉÓÃÓïÑԵġ°ÆÕͨ¡±·½Ê½µ½´¦´«µÝ¶ÔÏ󣬶øÇÒ´ó¶àÊýʱºò¶¼²»»áÓöµ½ÎÊÌâ¡£µ«¡¡

ÓÐЩʱºòÈ´²»µÃ²»²ÉȡһЩ·Ç³£×ö·¨£¬Ê¹µÃÇé¿öͻȻ±äµÃÉÔ΢¸´ÔÓÆðÀ´£¨ÔÚC£«£«ÖÐÔòÊDZäµÃ·Ç³£¸´ÔÓ£©¡£¡¡

Java¡¡Ò಻ÀýÍ⣬ÎÒÃÇÊ®·ÖÓбØҪ׼ȷÈÏʶÔÚ¶ÔÏ󴫵ݺ͸³ÖµÊ±Ëù·¢ÉúµÄÒ»ÇС£ÕâÕýÊDZ¾ÕµÄ×ÚÖ¼¡£¡¡¡¡

Èô¶ÁÕßÊÇ´ÓijЩÌØÊâµÄ³ÌÐòÉè¼Æ»·¾³ÖÐתÒƹýÀ´µÄ£¬ÄÇôһ°ã¶¼»áÎʵ½£º¡°Java¡¡ÓÐÖ¸ÕëÂ𣿡±ÓÐЩÈËÈÏΪָ¡¡

ÕëµÄ²Ù×÷ºÜÀ§ÄÑ£¬¶øÇÒÊ®·ÖΣÏÕ£¬ËùÒÔÒ»ÏáÇéÔ¸µØÈÏΪËüûÓкô¦¡£Í¬Ê±ÓÉÓÚJava¡¡ÓÐÈç´ËºÃµÄ¿Ú±®£¬ËùÒÔÓ¦¡¡

¸ÃºÜÇáÒ×µØÃâ³ý×Ô¼ºÒÔÇ°±à³ÌÖеÄÂé·³£¬ÆäÖв»¿ÉÄܼдøÓÐÖ¸ÕëÕâÑùµÄ¡°Î£ÏÕÆ·¡±¡£È»¶ø׼ȷµØ˵£¬Java¡¡ÊÇ¡¡

ÓÐÖ¸ÕëµÄ£¡ÊÂʵÉÏ£¬Java¡¡ÖÐÿ¸ö¶ÔÏ󣨳ý»ù±¾Êý¾ÝÀàÐÍÒÔÍ⣩µÄ±êʶ·û¶¼ÊôÓÚÖ¸ÕëµÄÒ»ÖÖ¡£µ«ËüÃǵÄʹÓÃÊÜ¡¡

µ½ÁËÑϸñµÄÏÞÖƺͷÀ·¶£¬²»½ö±àÒëÆ÷¶ÔËüÃÇÓС°½äÐÄ¡±£¬ÔËÐÐÆÚϵͳҲ²»ÀýÍâ¡£»òÕß»»´ÓÁíÒ»¸ö½Ç¶È˵£¬¡¡

Java¡¡ÓÐÖ¸Õ룬µ«Ã»Óд«Í³Ö¸ÕëµÄÂé·³¡£ÎÒÔøÒ»¶È½«ÕâÖÖÖ¸Õë½Ð×ö¡°¾ä±ú¡±£¬µ«Äã¿ÉÒÔ°ÑËüÏëÏñ³É¡°°²È«Ö¸¡¡

Õ롱¡£ºÍÔ¤±¸Ñ§Ð£ÎªÑ§ÉúÌṩµÄ°²È«¼ôµ¶ÀàËÆ¡ª¡ª³ý·ÇÌرðÓÐÒ⣬·ñÔò²»»áÉË×Å×Ô¼º£¬Ö»²»¹ýÓÐʱҪÂýÂý¡¡

À´£¬ÒªÏ°¹ßһЩ³ÁÃƵŤ×÷¡£¡¡¡¡



12¡£1¡¡´«µÝ¾ä±ú¡¡¡¡



½«¾ä±ú´«µÝ½øÈëÒ»¸ö·½·¨Ê±£¬Ö¸ÏòµÄÈÔÈ»ÊÇÏàͬµÄ¶ÔÏó¡£Ò»¸ö¼òµ¥µÄʵÑé¿ÉÒÔÖ¤Ã÷ÕâÒ»µã£¨ÈôÖ´ÐÐÕâ¸ö³ÌÐò¡¡

ʱÓÐÂé·³£¬Çë²Î¿¼µÚ3¡¡ÕÂ3¡£1¡£2¡¡Ð¡½Ú¡°¸³Öµ¡±£©£º¡¡¡¡

¡¡¡¡

//£º¡¡PassHandles¡£java¡¡¡¡

//¡¡Passing¡¡handles¡¡around¡¡¡¡

package¡¡c12£»¡¡¡¡

¡¡¡¡

public¡¡class¡¡PassHandles¡¡£û¡¡¡¡

¡¡¡¡static¡¡void¡¡f£¨PassHandles¡¡h£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨h¡¡inside¡¡f£¨£©£º¡¡¡¨¡¡£«¡¡h£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

¡¡¡¡public¡¡static¡¡void¡¡main£¨String£§£§¡¡args£©¡¡£û¡¡¡¡

¡¡¡¡¡¡¡¡PassHandles¡¡p¡¡=¡¡new¡¡PassHandles£¨£©£»¡¡¡¡

¡¡¡¡¡¡¡¡System¡£out¡£println£¨¡¨p¡¡inside¡¡main£¨£©£º¡¡¡¨¡¡£«¡¡p£©£»¡¡¡¡

¡¡¡¡¡¡¡¡f£¨p£©£»¡¡¡¡

¡¡¡¡£ý¡¡¡¡

£ý¡¡///£º~¡¡¡¡

¡¡¡¡

toString¡¡·½·¨»áÔÚ´òÓ¡Óï¾äÀï×Ô¶¯µ÷Ó㬶ø¡¡PassHandles¡¡Ö±½Ó´Ó¡¡Object¡¡¼Ì³Ð£¬Ã»ÓС¡toString¡¡µÄÖØж¨Òå¡£¡¡

Òò´Ë£¬ÕâÀï»á²ÉÓÃtoString¡¡µÄObject¡¡°æ±¾£¬´òÓ¡³ö¶ÔÏóµÄÀ࣬½Ó×ÅÊÇÄǸö¶ÔÏóËùÔÚµÄλÖ㨲»ÊǾä±ú£¬¶ø¡¡

ÊǶÔÏóµÄʵ¼Ê´æ´¢Î»Öã
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨10£© ²È£¨9£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡