ÈçºÎ»ñÈ¡javaÀàÖеıäÁ¿ÃûµÄ×Ö´®
ÔÚÀàÖж¨ÒåÁËÒ»¸öÊôÐÔabc£¬ÈçºÎ»ñÈ¡Õâ¸ö±äÁ¿µÄabcµÄÃû×Ö´®ÄØ£¿Ò²¾ÍÊÇ˵Ôõô֪µÀabcÕâ¸ö±äÁ¿µÄÃû×ÖÊÇabc£¬Õâ¸öÎÊÌâ±È½ÏµÄºÃÍæ¡£
Õâ¸öÊÇżÔÚÒ»¿ª·¢ÖÐÓöµ½µÄÒ»¸ö±È½ÏÓÐȤµÄÎÊÌ⣬ÕÒ Á˰ëÌìµÄ×ÊÁϼÓÏÂżÐÁÇÚµÄ˼¿¼£¬ÖÕÓÚÕÒµ½µÄ½â¾ö·½·¨¡£Ó÷´Éä¡«¡«¡«
javaÌṩÁ˺ÜÇ¿´óµÄ·´Éä»úÖÆ£¬¿ÉÒÔ˵±È¶¯Ì¬ÓïÑÔ»¹¶¯Ì¬¡£µ«ÊÇÕâ¸ö¶«¶«Æ½Ê±µÄÓ¦Óò»ÊǺܶàµÄ˵¡£
ÏÖÌṩһ¸ö¿ÉÒÔ¶¯Ì¬»ñÈ¡¶ÔÏóÖеıäÁ¿µÄ±äÁ¿Ãû³ÆµÄ·½·¨£º
public class MyTools {
public static void setAllComponentsName(Object f) {
// »ñÈ¡f¶ÔÏó¶ÔÓ¦ÀàÖеÄËùÓÐÊôÐÔÓò
Field[] fields = f.getClass().getDeclaredFields();
for(int i = 0 , len = fields.length; i < len; i++) {
// ¶ÔÓÚÿ¸öÊôÐÔ£¬»ñÈ¡ÊôÐÔÃû
String varName = fields[i].getName();
try {
// »ñÈ¡ÔÀ´µÄ·ÃÎÊ¿ØÖÆÈ¨ÏÞ
boolean accessFlag = fields[i].isAccessible();
// Ð޸ķÃÎÊ¿ØÖÆÈ¨ÏÞ
fields[i].setAccessible(true);
// »ñÈ¡ÔÚ¶ÔÏófÖÐÊôÐÔfields[i]¶ÔÓ¦µÄ¶ÔÏóÖеıäÁ¿
Object o = fields[i].get(f);
System.out.println("´«ÈëµÄ¶ÔÏóÖаüº¬Ò»¸öÈçϵıäÁ¿£º" + varName + " = " + o);
// »Ö¸´·ÃÎÊ¿ØÖÆÈ¨ÏÞ
fields[i].setAccessible(accessFlag);
} catch (IllegalArgumentException ex) {
ex.printStackTrace();
} catch (IllegalAccessException ex) {
ex.printStackTrace();
}
}
}
public static void main(String[] args)
{
// ²âÊÔ´úÂëÓÃÀ´»ñȡһ¸öJLabelÖÐÉùÃûµÄËùÓеÄÊôÐÔÃûºÍÆäÊôÐÔ±äÁ¿
setAllComponentsName(new JLabel("²âÊÔ"));
}
}
fields[i].setAccessible(true);Õâ¾äÖ÷ÒªÊÇÒòΪ˽ÓеıäÁ¿ÔÚ¶ÔÏóÍâÊÇÎÞ·¨·ÃÎʵģ¬Í¨¹ýÕâ¸öÉèÖþͿÉÒԸıä˽ÓбäÁ¿µÄ·ÃÎÊȨ£¬»¹ÕæµÄÓеã¿Ö²À£¬µ±Å¼°ÑÕâ¸ö½â¾ö·½·¨¸æËßBossµÄʱºò£¬Boss²îµãÍÂѪ£¬Ë½ÓеͼÄÜ·ÃÎÊÁË£¬»¹ÓÐʲô°²È«¿ÉÑÔ£¿
²»¹ýÁË£¬Óа²È«¾ÍÓÐÌØÈ¨£¬ËùÒÔÓÉÓÚÄܺܺõĽâ¾öÎÊÌ⻹ÊDZ»²ÉÄÉÁË£¬ÎûÎû¡«¡«¡«
Object o = fields[i].get(f);Õâ¾äµÄ×÷ÓþÍÊÇÈ¡µÃ´«Èë¶ÔÏófÖÐÀàµÄÊôÐ
Ïà¹ØÎĵµ£º
Ò» Ïà¶Ô·¾¶µÄ»ñµÃ
˵Ã÷:Ïà¶Ô·¾¶(¼´²»Ð´Ã÷ʱºòµ½µ×Ïà¶ÔË)¾ù¿Éͨ¹ýÒÔÏ·½Ê½»ñµÃ£¨²»ÂÛÊÇÒ»°ãµÄjavaÏîÄ¿»¹ÊÇwebÏîÄ¿£©
String relativelyPath=System.getProperty("user.dir");
ÉÏÊöÏà¶Ô·¾¶ÖУ¬javaÏîÄ¿ÖÐµÄ ......
package com.test.servlet;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
import org.apache.axis.message.SOAPHeaderElement;
public class WebService {
&nbs ......
package innerClass.test;
public class InheritTest
{
public static void main(String[] args)
{
Person p = new Person("LMS");
p.show();
  ......
JavaÖеÄreturnÓï¾ä×ÜÊǺͷ½·¨ÓÐÃÜÇйØÏµ£¬returnÓï¾ä×ÜÊÇÓÃÔÚ·½·¨ÖУ¬ÓÐÁ½¸ö×÷Óã¬Ò»¸öÊÇ·µ»Ø·½·¨Ö¸¶¨ÀàÐ͵ÄÖµ(Õâ¸öÖµ×ÜÊÇÈ·¶¨µÄ)£¬Ò»¸öÊǽáÊø·½·¨µÄÖ´ÐÐ(½ö½öÒ»¸öreturnÓï¾ä)¡£
¡¡¡¡ÔÚreturnÓï¾äµÄ¸÷ÀàÎÄÕÂÖУ¬´ó¶à½ö½ö½éÉÜÁËreturnÓï¾äÓÃÓÚÓзµ»ØÖµ(·Çvoid·µ»ØÖµ)µÄ·½·¨ÖС£¶øºÜÉÙ»òûÓнéÉÜreturnÓï¾äÔÚvodi·µ»ØÖµ·½·¨ ......
Reflection ÊÇJava±»ÊÓΪ¶¯Ì¬£¨»ò×¼¶¯Ì¬£©ÓïÑÔµÄÒ»¸ö¹Ø¼üÐÔÖÊ¡£Õâ¸ö»úÖÆÔÊÐí³ÌÐòÔÚÔËÐÐʱ͸¹ýReflection APIsÈ¡µÃÈκÎÒ»¸öÒÑÖªÃû³ÆµÄclass
µÄÄÚ²¿ÐÅÏ¢£¬°üÀ¨Æämodifiers£¨ÖîÈçpublic, static µÈµÈ£©¡¢superclass£¨ÀýÈçObject£©¡¢ÊµÏÖÖ®interfaces£¨ÀýÈçCloneable£©£¬Ò²°üÀ¨fields
ºÍmethodsµÄËùÓÐÐÅÏ ......