javaÖеķ´Éä»úÖÆ
Ò»¡¢Ê²Ã´ÊÇ·´É䣺
·´ÉäµÄ¸ÅÄîÊÇÓÉSmithÔÚ1982ÄêÊ×´ÎÌá³öµÄ£¬Ö÷ÒªÊÇÖ¸³ÌÐò¿ÉÒÔ·ÃÎÊ¡¢¼ì²âºÍÐÞ¸ÄËü±¾Éí״̬»òÐÐΪµÄÒ»ÖÖÄÜÁ¦¡£ÕâÒ»¸ÅÄîµÄÌá³öºÜ¿ìÒý·¢Á˼ÆËã»ú¿ÆÑ§ÁìÓò¹ØÓÚÓ¦Ó÷´ÉäÐÔµÄÑо¿¡£ËüÊ×Ïȱ»³ÌÐòÓïÑÔµÄÉè¼ÆÁìÓòËù²ÉÓÃ,²¢ÔÚLispºÍÃæÏò¶ÔÏó·½ÃæÈ¡µÃÁ˳ɼ¨¡£ÆäÖÐLEAD/LEAD++ ¡¢OpenC++ ¡¢MetaXaºÍOpenJavaµÈ¾ÍÊÇ»ùÓÚ·´Éä»úÖÆµÄÓïÑÔ¡£×î½ü£¬·´Éä»úÖÆÒ²±»Ó¦Óõ½ÁËÊÓ´°ÏµÍ³¡¢²Ù×÷ϵͳºÍÎļþϵͳÖС£
·´Éä±¾Éí²¢²»ÊÇÒ»¸öиÅÄ¾¡¹Ü¼ÆËã»ú¿ÆÑ§¸³ÓèÁË·´Éä¸ÅÄîеĺ¬Òå¡£ÔÚ¼ÆËã»ú¿ÆÑ§ÁìÓò£¬·´ÉäÊÇÖ¸Ò»ÀàÓ¦Óã¬ËüÃÇÄܹ»×ÔÃèÊöºÍ×Ô¿ØÖÆ¡£Ò²¾ÍÊÇ˵£¬ÕâÀàÓ¦ÓÃͨ¹ý²ÉÓÃijÖÖ»úÖÆÀ´ÊµÏÖ¶Ô×Ô¼ºÐÐΪµÄÃèÊö£¨self-representation£©ºÍ¼à²â£¨examination£©£¬²¢Äܸù¾Ý×ÔÉíÐÐΪµÄ״̬ºÍ½á¹û£¬µ÷Õû»òÐÞ¸ÄÓ¦ÓÃËùÃèÊöÐÐΪµÄ״̬ºÍÏà¹ØµÄÓïÒå¡£
¶þ¡¢Ê²Ã´ÊÇJavaÖеÄÀà·´É䣺
Reflection ÊÇ Java ³ÌÐò¿ª·¢ÓïÑÔµÄÌØÕ÷Ö®Ò»£¬ËüÔÊÐíÔËÐÐÖÐµÄ Java ³ÌÐò¶Ô×ÔÉí½øÐмì²é£¬»òÕß˵“×ÔÉ󔣬²¢ÄÜÖ±½Ó²Ù×÷³ÌÐòµÄÄÚ²¿ÊôÐԺͷ½·¨¡£Java µÄÕâÒ»ÄÜÁ¦ÔÚʵ¼ÊÓ¦ÓÃÖÐÓõò»ÊǺܶ࣬µ«ÊÇÔÚÆäËüµÄ³ÌÐòÉè¼ÆÓïÑÔÖиù±¾¾Í²»´æÔÚÕâÒ»ÌØÐÔ¡£ÀýÈ磬Pascal¡¢C »òÕß C++ ÖоÍûÓа취ÔÚ³ÌÐòÖлñµÃº¯Êý¶¨ÒåÏà¹ØµÄÐÅÏ¢¡£
Reflection ÊÇ Java ±»ÊÓΪ¶¯Ì¬£¨»ò×¼¶¯Ì¬£©ÓïÑԵĹؼü£¬ÔÊÐí³ÌÐòÓÚÖ´ÐÐÆÚ Reflection APIs È¡µÃÈκÎÒÑÖªÃû³ÆÖ® class µÄ內²¿ÐÅÏ¢£¬°üÀ¨ package¡¢type parameters¡¢superclass¡¢implemented interfaces¡¢inner classes, outer class, fields¡¢constructors¡¢methods¡¢modifiers£¬並¿ÉÓÚÖ´ÐÐÆÚÉú³Éinstances¡¢±ä¸ü fields 內ÈÝ»ò»½Æð methods¡£
Èý¡¢JavaÀà·´ÉäÖÐËù±ØÐëµÄÀࣺ
JavaµÄÀà·´ÉäËùÐèÒªµÄÀಢ²»¶à£¬ËüÃÇ·Ö±ðÊÇ£ºField¡¢Constructor¡¢Method¡¢Class¡¢Object£¬ÏÂÃæÎÒ½«¶ÔÕâЩÀà×öÒ»¸ö¼òµ¥µÄ˵Ã÷¡£
FieldÀࣺÌṩÓйØÀà»ò½Ó¿ÚµÄÊôÐÔµÄÐÅÏ¢£¬ÒÔ¼°¶ÔËüµÄ¶¯Ì¬·ÃÎÊȨÏÞ¡£·´ÉäµÄ×ֶοÉÄÜÊÇÒ»¸öÀࣨ¾²Ì¬£©ÊôÐÔ»òʵÀýÊôÐÔ£¬¼òµ¥µÄÀí½â¿ÉÒÔ°ÑËü¿´³ÉÒ»¸ö·â×°·´ÉäÀàµÄÊôÐÔµÄÀà¡£
ConstructorÀࣺÌṩ¹ØÓÚÀàµÄµ¥¸ö¹¹Ôì·½·¨µÄÐÅÏ¢ÒÔ¼°¶ÔËüµÄ·ÃÎÊȨÏÞ¡£Õâ¸öÀàºÍFieldÀ಻ͬ£¬FieldÀà·â×°ÁË·´ÉäÀàµÄÊôÐÔ£¬¶øConstructorÀàÔò·â×°ÁË·´ÉäÀàµÄ¹¹Ôì·½·¨¡£
MethodÀࣺÌṩ¹ØÓÚÀà»ò½Ó¿ÚÉϵ¥¶Àij¸ö·½·¨µÄÐÅÏ¢¡£Ëù·´Ó³µÄ·½·¨¿ÉÄÜÊÇÀà·½·¨»òʵÀý·½·¨£¨°üÀ¨³éÏó·½·¨£©¡£ Õâ¸öÀ಻ÄÑÀí½â£¬ËüÊÇÓÃÀ´·â×°·´ÉäÀà·½·¨µÄÒ»¸öÀà¡£
ClassÀࣺÀàµÄʵÀý±íʾÕýÔÚÔËÐÐµÄ Java
Ïà¹ØÎĵµ£º
¹ØÓÚJavaµÄ»ù´¡ÖªÊ¶£¬Êµ¼ùÖ¤Ã÷ѧϰOO£¬×îÖÕÁìÎò“¸¸Àà¿ØÖÆÁ÷³Ì£¬×ÓÀàʵÏÖ¾ßÌåµÄÒµÎñÂß¼”µÄOO˼Ï룬ÐèÒªµÄ²»ÊÇÖÇÉ̶øÊÇ»ù´¡£¬Ò²¾ÍÊÇ˵£¬»ù´¡Ô½ºÃÔ½¿ìÁìÎò£¬ËùÒÔÇëÿλS1ѧϰJavaµÄѧԱÇëÀμÇÒÔÏÂJavaÁìÓòµÄ»ù´¡ÖªÊ¶£¬×îºó×£¸÷λѧԱÔÚ¿ª·¢ÏîĿǰ¿ÉÒÔÁìÎòOOµÄÕæÚУ¬ÀÏʦҲ»á½ß¾¡È«Á¦ÖúÄãÃÇ´òͨÕâµÀͨÏòJavaµÄ¼«ËÙ ......
½ñÌìºÍ´ó¼ÒÒ»ÆðѧϰJavaµÄÉè¼ÆÄ£Ê½¡£±¾È˵Äˮƽ²»ÊǺܸߣ¬ÕâϵÁÐÎÄÕÂÖ»ÊÇ×Ô¼ºÑ§Ï°µÄ¹ý³Ì£¬²¢Ï£ÍûÄÜͬ´ó¼Ò·ÖÏí¾Ñé¡£
ÏÈ˵ÏÂÎÒ¶Ô¹¤³§Ä£Ê½µÄÀí½â£ºµ±ÎÒÃÇÐèҪij¸ö¶ÔÏóʱ£¬×îÖ±½ÓµÄ°ì·¨ÊÇ¿´µ½Õâ¸ö¶ÔÏó¾ÍÄùýÀ´¡£µ«Êǵ±¶ÔÏó·Ç³£¶àµÄʱºò£¬ÕÒÆðÀ´¾ÍºÜ²»·½±ã¡£Õâʱ¾ÍÐèÒªÒ»¸öÖнéÀ´°ïÖúÎÒÃÇÈ¡µÃÏëÒªµÄ¶«Î÷£¬Õâ¸öÖнé¾ÍÊǹ¤³§£¨fa ......
¹Ø¼ü×Ö: java.e800.com.cn/articles/2007/413/1176400876794405339_1.htm
http://java.e800.com.cn/articles/2007/413/1176400876794405339_1.html
±àÕß°´£ºJavaÄÚ´æÐ¹Â©ÊÇÿ¸öJava³ÌÐòÔ±¶¼»áÓöµ½µÄÎÊÌ⣬³ÌÐòÔÚ±¾µØÔËÐÐÒ»ÇÐÕý³££¬¿ÉÊDz¼Êðµ½Ô¶¶Ë¾Í»á³öÏÖÄÚ´æÎÞÏÞÖÆµÄÔö³¤£¬×îºóϵͳ̱»¾£¬ÄÇôÈçºÎ×î¿ì×îºÃµÄ¼ì²â³ÌÐòµÄÎ ......
javaÎļþ¹ýÂËÆ÷µÄʹÓôúÂëÈçÏ£º
²âÊÔ´úÂ룺package file;
import java.io.File;
public class fileFilter {
public static void main(String[] args) {
File file = new File("d:\\");//ÉèÖÃÎļþ·¾¶
for (File fileList : file.listFiles(new file.MyFileFilter())) {
......
ÎÒÃÇÿ¸öѧÆÚÄ©¶¼»á½øÐн«½üÒ»¸öÔµÄʵѵ£¬Õâ´ÎJavaʵѵҲ¼´½«½áÊø£¬ÎÒÑ¡µÄ¿ÎÌâÊÇ“¸öÈËÍøÉÏÒøÐÐϵͳ”£¬ÔËÓÃÁËStruts£¬HibernateºÍSpring¿ò¼Ü£¬Í¨¹ýmvcÉè¼ÆÄ£Ê½¡£»ù±¾ËùÓеŦÄܶ¼ÊµÏÖÁË£¬ÔÚʵѵÖÐÕæµÄѧµ½Á˺ܶà֪ʶ£¬Ö®¼äÒ²Óöµ½Á˺ܶàÎÊÌ⣬µ«¶¼Ò»Ò»µÃµ½½â¾ö¡£ÎÒ½øÒ»²½Á˽âÁËStrutsµÄÔËÐÐÔÀí£¬ÂíÉÏÃæÁÙ ......