Java Reflection (JAVA·´Éä) Ïê½â
JavaÓïÑÔ·´ÉäÌṩһÖÖ¶¯Ì¬Á´½Ó³ÌÐò×é¼þµÄ¶à¹¦ÄÜ·½·¨¡£ËüÔÊÐí³ÌÐò´´½¨ºÍ¿ØÖÆÈκÎÀàµÄ¶ÔÏó(¸ù¾Ý°²È«ÐÔÏÞÖÆ)£¬ÎÞÐèÌáÇ°Ó²±àÂëÄ¿±êÀà¡£ÕâЩÌØÐÔʹµÃ·´ÉäÌرðÊÊÓÃÓÚ´´½¨ÒԷdz£ÆÕͨµÄ·½Ê½Óë¶ÔÏóÐ×÷µÄ¿â¡£ÀýÈ磬·´Éä¾³£ÔÚ³ÖÐø´æ´¢¶ÔÏóΪÊý¾Ý¿â¡¢XML»òÆäËüÍⲿ¸ñʽµÄ¿ò¼ÜÖÐʹÓá£Java reflection ·Ç³£ÓÐÓã¬ËüʹÀàºÍÊý¾Ý½á¹¹ÄÜ°´Ãû³Æ¶¯Ì¬¼ìË÷Ïà¹ØÐÅÏ¢£¬²¢ÔÊÐíÔÚÔËÐÐ×ŵijÌÐòÖвÙ×÷ÕâЩÐÅÏ¢¡£Java µÄÕâÒ»ÌØÐԷdz£Ç¿´ó£¬²¢ÇÒÊÇÆäËüһЩ³£ÓÃÓïÑÔ£¬Èç C¡¢C++¡¢Fortran »òÕß Pascal µÈ¶¼²»¾ß±¸µÄ¡£
µ«·´ÉäÓÐÁ½¸öȱµã¡£µÚÒ»¸öÊÇÐÔÄÜÎÊÌâ¡£ÓÃÓÚ×ֶκͷ½·¨½ÓÈëʱ·´ÉäÒªÔ¶ÂýÓÚÖ±½Ó´úÂë¡£ÐÔÄÜÎÊÌâµÄ³Ì¶ÈÈ¡¾öÓÚ³ÌÐòÖÐÊÇÈçºÎʹÓ÷´ÉäµÄ¡£Èç¹ûËü×÷Ϊ³ÌÐòÔËÐÐÖÐÏà¶ÔºÜÉÙÉæ¼°µÄ²¿·Ö£¬»ºÂýµÄÐÔÄܽ«²»»áÊÇÒ»¸öÎÊÌâ¡£¼´Ê¹²âÊÔÖÐ×Çé¿öϵļÆʱͼÏÔʾµÄ·´Éä²Ù×÷Ö»ºÄÓü¸Î¢Ãë¡£½ö·´ÉäÔÚÐÔÄܹؼüµÄÓ¦ÓõĺËÐÄÂß¼ÖÐʹÓÃʱÐÔÄÜÎÊÌâ²Å±äµÃÖÁ¹ØÖØÒª¡£
Ðí¶àÓ¦ÓÃÖиüÑÏÖصÄÒ»¸öȱµãÊÇʹÓ÷´Éä»áÄ£ºý³ÌÐòÄÚ²¿Êµ¼ÊÒª·¢ÉúµÄÊÂÇé¡£³ÌÐòÈËԱϣÍûÔÚÔ´´úÂëÖп´µ½³ÌÐòµÄÂß¼£¬·´ÉäµÈÈƹýÁËÔ´´úÂëµÄ¼¼Êõ»á´øÀ´Î¬»¤ÎÊÌâ¡£·´Éä´úÂë±ÈÏàÓ¦µÄÖ±½Ó´úÂë¸ü¸´ÔÓ£¬ÕýÈçÐÔÄܱȽϵĴúÂëʵÀýÖп´µ½µÄÒ»Ñù¡£½â¾öÕâЩÎÊÌâµÄ×î¼Ñ·½°¸ÊDZ£ÊصØʹÓ÷´Éä——½öÔÚËü¿ÉÒÔÕæÕýÔö¼ÓÁé»îÐԵĵط½——¼Ç¼ÆäÔÚÄ¿±êÀàÖеÄʹÓá£
¡¡ ReflectionÊÇJava ³ÌÐò¿ª·¢ÓïÑÔµÄÌØÕ÷Ö®Ò»£¬ËüÔÊÐíÔËÐÐÖÐµÄ Java ³ÌÐò¶Ô×ÔÉí½øÐмì²é£¬»òÕß˵"×ÔÉó"£¬²¢ÄÜÖ±½Ó²Ù×÷³ÌÐòµÄÄÚ²¿ÊôÐÔ¡£ÀýÈ磬ʹÓÃËüÄÜ»ñµÃ Java ÀàÖи÷³ÉÔ±µÄÃû³Æ²¢ÏÔʾ³öÀ´¡£
¡¡¡¡Java µÄÕâÒ»ÄÜÁ¦ÔÚʵ¼ÊÓ¦ÓÃÖÐÒ²ÐíÓõò»ÊǺܶ࣬µ«ÊÇÔÚÆäËüµÄ³ÌÐòÉè¼ÆÓïÑÔÖиù±¾¾Í²»´æÔÚÕâÒ»ÌØÐÔ¡£ÀýÈ磬Pascal¡¢C »òÕß C++ ÖоÍûÓа취ÔÚ³ÌÐòÖлñµÃº¯Êý¶¨ÒåÏà¹ØµÄÐÅÏ¢¡£
¡¡¡¡JavaBean ÊÇ reflection µÄʵ¼ÊÓ¦ÓÃÖ®Ò»£¬ËüÄÜÈÃһЩ¹¤¾ß¿ÉÊÓ»¯µÄ²Ù×÷Èí¼þ×é¼þ¡£ÕâЩ¹¤¾ßͨ¹ý reflection ¶¯Ì¬µÄÔØÈ벢ȡµÃ Java ×é¼þ(Àà) µÄÊôÐÔ¡£
1. Ò»¸ö¼òµ¥µÄÀý×Ó
¡¡¡¡¿¼ÂÇÏÂÃæÕâ¸ö¼òµ¥µÄÀý×Ó£¬ÈÃÎÒÃÇ¿´¿´ reflection ÊÇÈçºÎ¹¤×÷µÄ¡£
import java.lang.reflect.*;
public class DumpMethods {
public static void main(String args[]) {
try {
Class c = Class.forName(args[0]);
Method m[] = c.getDeclaredMethods();
for (int i = 0; i < m.length; i++)
System.out.println(m[i].toString(
Ïà¹ØÎĵµ£º
×î½üÓöµ½Ò»¸öÐèÇóÒªÔÚlinuxÏÂÓÃjava µ÷ÓÃmysql¿Í»§¶ËÔ¶³ÌµÇ½mysql·þÎñÆ÷£¬´Ó¿Í»§¶Ë»úÆ÷µ¼Èëmysql½Å±¾£¬´Ómysql·þÎñÆ÷¶Ëµ¼³ö±íÖеÄÊý¾Ý¡£ÒÔÏÂÊÇÓõ½µÄÖ÷Òª·½·¨£º
Java ´úÂë
/**
* µ¼ÈëÊý¾Ý
* @param ½Å±¾µÄµØÖ·ºÍÃû³Æ
* @return ÊÇ·ñ³ ......
0¡¡ÒýÑÔ
´Ó¿ØÖÆ̨ÖжÁÈ¡Êý¾ÝÊÇÒ»¸ö±È½Ï³£ÓõŦÄÜ£¬ÔÚ JDK 5.0 ÒÔÇ°µÄ°æ±¾ÖеÄʵÏÖÊDZȽϸ´Ôӵģ¬ÐèÒªÊÖ¹¤´¦ÀíϵͳµÄÊäÈëÁ÷¡£ÓÐÒâ˼µÄÊÇ£¬´Ó JDK 5.0 °æ±¾¿ªÊ¼£¬ÄÜ´Ó¿ØÖÆ̨ÖÐÊäÈëÊý¾ÝµÄ·½·¨Ã¿Ôö¼ÓÒ»¸ö°æ±¾ºÅ£¬¾ÍÓÐÒ»ÖÖÐÂÔöµÄ·½·¨£¬ÕâÒ²Ôö¼ÓÁËÑ¡ÔñµÄÖÖÀ࣬¿ÉÒÔÒÀ¾Ý²»Í¬µÄÒªÇóÀ´½øÐÐÑ¡Ôñ¡£ÏÂÃæÀ´¿´Ò»Ï£¬¸÷¸ö°æ±¾ÖÐÈçºÎ´Ó¿ØÖ ......
Ò»ÖøÃûÈí¼þ¹«Ë¾µÄjava±ÊÊÔËã·¨Ì⣡(2008-11-06 12:49:19)±êÇ©£ºjava ÃæÊÔÌâ it ·ÖÀࣺJ2SE
ÔÌâÈçÏ£ºÓÃ1¡¢2¡¢2¡¢3¡¢4¡¢5ÕâÁù¸öÊý×Ö£¬ÓÃjavaдһ¸ömainº¯Êý£¬´òÓ¡³öËùÓв»Í¬µÄÅÅÁУ¬È磺512234¡¢412345µÈ£¬ÒªÇó£º "4 "²»ÄÜÔÚµÚÈý룬 "3 "Óë "5 "²»ÄÜÏàÁ¬.
ÎÒ¿´ÁË»ØÌù¶¼Ã»Óкܺýâ¾ö£¬Ö÷ÒªÊÇûÓÐÅųýÖ ......
Ò»¡¢.net Server¶Ë
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;
using System.Web.Services.Description;
namespace WebApplica ......
һЩ³õѧJAVAµÄÅóÓÑ¿ÉÄÜ»áÓöµ½JAVAµÄÊý¾ÝÀàÐÍÖ®¼äת»»µÄ¿àÄÕ£¬ÀýÈ磬ÕûÊýºÍfloat,doubleÐÍÖ®¼äµÄת»»£¬ÕûÊýºÍStringÀàÐÍÖ®¼äµÄת»»£¬ÒÔ¼°´¦Àí¡¢ÏÔʾʱ¼ä·½ÃæµÄÎÊÌâµÈ¡£ÏÂÃæ±ÊÕ߾Ϳª·¢ÖеÄһЩÌå»á½éÉܸø´ó¼Ò¡£
ÎÒÃÇÖªµÀ£¬JavaµÄÊý¾ÝÀàÐÍ·ÖΪÈý´óÀ࣬¼´²¼¶ûÐÍ¡¢×Ö·ûÐͺÍÊýÖµÐÍ£¬¶øÆäÖÐÊýÖµÐÍÓÖ·ÖΪÕûÐͺ͸¡µãÐÍ£»Ïà¶Ô ......