Java·´ÉäÖ®Methodµ÷ÓúÍFiledÉèÖÃ
·´ÉäÊÇjavaµÄÒ»¸ö¸ß¼¶ÌØÐÔ¡£
Reflection ÊÇJava±»ÊÓΪ¶¯Ì¬£¨»ò×¼¶¯Ì¬£©ÓïÑÔµÄÒ»¸ö¹Ø¼üÐÔÖÊ¡£Õâ¸ö»úÖÆÔÊÐí³ÌÐòÔÚÔËÐÐʱ͸¹ýReflection APIsÈ¡µÃÈκÎÒ»¸öÒÑÖªÃû³ÆµÄclassµÄÄÚ²¿ÐÅÏ¢£¬°üÀ¨Æämodifiers£¨ÖîÈçpublic, static µÈµÈ£©¡¢superclass£¨ÀýÈçObject£©¡¢ÊµÏÖÖ®interfaces£¨ÀýÈçSerializable£©£¬Ò²°üÀ¨fieldsºÍmethods µÄËùÓÐÐÅÏ¢£¬²¢¿ÉÓÚÔËÐÐʱ¸Ä±äfieldsÄÚÈÝ»òµ÷ÓÃmethods¡£
·´Éä¾ÍÊǸøÓ¦ÓóÌÐòÒ»¸ö¿ÉÒÔ¼ì²é×Ô¼ººÍÔËÐл·¾³µÄÒ»¸ö·¾¶¡£×Ô¼ºÐÅÏ¢µÄÌæ´ú—MetaData.
ÈëÃż¶±ðÏÈ¿´¿´Èç¹ûͨ¹ý·´Éäµ÷Ó÷½·¨ºÍÉèÖóÉÔ±±äÁ¿µÄÖµ£º
1.ͨ¹ý·´ÉäÉèÖñäÁ¿Öµ
import java.lang.reflect.Field;
/**
* ·´ÉäÐÞ¸ÄField
*
* @author yblin
*/
public class RefField {
public String color;
public Double number;
public static void main(String args[]) {
try {
Class c = RefField.class;
Field colorField;
colorField = c.getField("color");
Field numberField = c.getField("number");
RefField obj = new RefField();
colorField.set(obj, "blue");
System.out.println("color=" + colorField.get(obj));
numberField.set(obj, 2.1);
System.out.println("number=" + numberField.get(obj));
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchFieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
2.µ÷Ó÷´Éäµ÷Ó÷½·¨
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* ·´Éä·½·¨µ÷Óá£
*
* @author yblin
*/
public class RefMethod {
private String color;
public void printColor() {
Ïà¹ØÎĵµ£º
ǰÎÀ¼¼Êõ ¡¶Ä§ÊÞÍâ´«¡·È«ÐÂJAVAÒýÇæ
¡¶Ä§ÊÞÍâ´«¡·ÊÇÓÉÏã³ÈÍøÂçÊ×´ÎÍ»ÆÆFLASHÒýÇæÏÞÖÆ£¬²ÉÓÃJAVAÒýÇæ×ÔÖ÷Ñз¢µÄ¶¯Ì¬Õ½¶·²ßÂÔÀàÓÎÏ·¡£ËùνJava¾ÍÊÇÒ»ÖÖ¼òµ¥µÄ£¬ÃæÏò¶ÔÏóµÄ£¬½¡×³°²È«µÄ£¬½á¹¹ÖÐÁ¢µÄ£¬ÐÔÄÜÓÅÒì¡¢¶àÏ̵߳Ķ¯Ì¬ÓïÑÔ¡£ËüµÄÓï·¨ÓëCÓïÑÔºÍC++ÓïÑԺܽӽü£¬µ«ÊDZ÷ÆúÁËC++ÖкÜÉÙʹÓõġ¢ºÜÄÑÀí½âµÄ¡¢ÁîÈËÃÔ»óµÄÄÇÐ©Ì ......
Java.sql°üÖÐµÄ java.sql.Driver, jdbc.sql.ConnectionµÈÌṩ¸ø³ÌÐò¿ª·¢ÈËԱͳһµÄ¿ª·¢½Ó¿Ú£¬Êý¾Ý¿âÌṩÉÌÌṩÏàÓ¦µÄʵÏÖ£¬¶Ô³ÌÐò¿ª·¢ÈËÔ±À´½²Ö»ÒªÖªµÀÕâЩ½Ó¿Ú¶¼ÓÐÄÄЩ·½·¨¾Í¿ÉÒÔÁË¡£µ«ÎÒÃÇ¿ÉÒÔÉîÈëһЩ¿´¿´µ½µ×ÕâÀïÃæ¶¼×öÁËÄÇЩÊ£¬ ͬʱҲ¿ÉÒÔѧϰÆäÖеıà³Ìģʽ(ÈçInterfaceģʽµÈ)¡£
¡¡¡¡1¡¢ Class.forName(String cl ......
ÎÊÌâ
ÔÚǰһС½Ú£¬½éÉÜÁËÔÚ¶àÏ̱߳à³ÌÖÐʹÓÃͬ²½»úÖÆµÄÖØÒªÐÔ£¬²¢Ñ§»áÁËÈçºÎʵÏÖͬ²½µÄ·½·¨À´ÕýÈ·µØ·ÃÎʹ²Ïí×ÊÔ´¡£ÕâЩÏß³ÌÖ®¼äµÄ¹ØÏµÊÇÆ½µÈµÄ£¬±Ë´ËÖ®¼ä²¢²»´æÔÚÈκÎÒÀÀµ£¬ËüÃǸ÷×Ô¾ºÕùCPU×ÊÔ´£¬»¥²»ÏàÈ㬲¢ÇÒ»¹ÎÞÌõ¼þµØ×èÖ¹ÆäËûÏ̶߳Թ²Ïí×ÊÔ´µÄÒì²½·ÃÎÊ¡£È»¶ø£¬Ò²ÓкܶàÏÖʵÎÊÌâÒªÇó²»½öҪͬ²½µÄ·ÃÎÊͬһ¹²Ïí×ÊÔ´£¬¶øÇ ......
Ò»£ºÀí½â¶àÏß³Ì
¶àÏß³ÌÊÇÕâÑùÒ»ÖÖ»úÖÆ£¬ËüÔÊÐíÔÚ³ÌÐòÖв¢·¢Ö´Ðжà¸öÖ¸ÁîÁ÷£¬Ã¿¸öÖ¸ÁîÁ÷¶¼³ÆÎªÒ»¸öỊ̈߳¬±Ë´Ë¼ä»¥Ïà¶ÀÁ¢¡£
Ïß³ÌÓÖ³ÆÎªÇáÁ¿¼¶½ø³Ì£¬ËüºÍ½ø³ÌÒ»ÑùÓµÓжÀÁ¢µÄÖ´ÐпØÖÆ£¬ÓɲÙ×÷ϵͳ¸ºÔðµ÷¶È£¬Çø±ðÔÚÓÚÏß³ÌûÓжÀÁ¢µÄ´æ´¢¿Õ¼ä£¬¶øÊǺÍËùÊô½ø³ÌÖÐµÄÆäËüÏ̹߳²ÏíÒ»¸ö´æ´¢¿Õ¼ä£¬ÕâʹµÃÏ̼߳äµÄͨÐÅÔ¶½Ï½ø³Ì¼òµ¥¡£
......
¹¤×÷̨´°¿ÚµÄEditorÇøÓòĬÈÏÊÇÏÔʾµÄ£¬¶øÇÒËüÖ§³ÖÍÏ×§²Ù×÷¡£ÔÚEclipseÀïÃæ£¬°ÑÒ»¸öÎļþÍϵ½EditorÇøÓò£¬¾Í»á×Ô¶¯´ò¿ª¸ÃÎļþµÄ
Editor.¸ÃÌØÐÔÊÇÔÚIWorkbenchWindowConfigurer ÖÐÉèÖá£
ÔÚPassWord GateÖУ¬µ±Í϶¯Password Gate ViewÖеÄÒ»¸öGroup »òÕß
Serviceµ½EditorÇøÓò£¬»áÔÚEditorÏÔʾ¸Ã ......