javaÖеķ´Éä»úÖÆ
1£©¸ÅÄ
ÊÇÔÚÔËÐÐ״̬ÖУ¬¶ÔÓÚÈÎÒâÒ»¸öÀ࣬¶¼Äܹ»ÖªµÀÕâ¸öÀàµÄËùÓÐÊôÐԺͷ½·¨£»¶ÔÓÚÈÎÒâÒ»¸ö¶ÔÏ󣬶¼Äܹ»µ÷ÓÃËüµÄÈÎÒâÒ»¸ö·½·¨£»ÕâÖÖ¶¯Ì¬»ñÈ¡µÄÐÅÏ¢ÒÔ¼°¶¯Ì¬µ÷ÓöÔÏóµÄ·½·¨µÄ¹¦ÄܳÆÎªjavaÓïÑԵķ´Éä»úÖÆ¡£
2£©¹¦ÄÜ£º
ÔÚÔËÐÐʱÅжÏÈÎÒâÒ»¸ö¶ÔÏóËùÊôµÄÀࣻ
ÔÚÔËÐÐʱ¹¹ÔìÈÎÒâÒ»¸öÀàµÄ¶ÔÏó£»
ÔÚÔËÐÐʱÅжÏÈÎÒâÒ»¸öÀàËù¾ßÓеijÉÔ±±äÁ¿ºÍ·½·¨£»
ÔÚÔËÐÐʱµ÷ÓÃÈÎÒâÒ»¸ö¶ÔÏóµÄ·½·¨£»
Éú³É¶¯Ì¬´úÀí¡£
3£©»ñµÃij¸ö¶ÔÏóµÄ¾ßÌåÊôÐÔ£º
Class ownerClass = owner.getClass()£ºµÃµ½¶ÔÏóownerµÄClass¡£
Field field = ownerClass.getField(fieldName)£ºÍ¨¹ýClassµÃµ½ÀàÉùÃ÷µÄÊôÐÔ¡£
Object property = field.get(owner)£ºÍ¨¹ý¶ÔÏóµÃµ½¸ÃÊôÐÔµÄʵÀý£¬Èç¹ûÕâ¸öÊôÐÔÊǷǹ«Óеģ¬ÕâÀï»á±¨IllegalAccessException¡£Èç¹ûÐèÒª·ÃÎʵ½¶ÔÏóµÄprivateÊôÐÔ£¬ÐèÒªÊ×Ïȵ÷ÓãºAccesibleObject.setAccessible(FieldÃû×Ö£¬true);
Èç¹û˵ÊÇ»ñÈ¡ClassµÄ¾²Ì¬ÊôÐÔ£ºÔòµÚÈý¾ä»»³ÉObject property=field.get(ClassÃû×Ö)£¬¶ø²»ÊÇÓÃʵÀýµÄÃû×Ö¡£
4£©Ö´ÐÐij¸ö¶ÔÏóµÄ·½·¨£º
public Object invokeMethod(Object owner, String methodName, Object[] args) throws Exception {
Class ownerClass = owner.getClass();
Class[] argsClass = new Class[args.length];
for (int i = 0, j = args.length; i < j; i++) {
argsClass = args.getClass();
}
Method method = ownerClass.getMethod(methodName, argsClass);
return method.invoke(owner, args);
}
Èç¹ûÊÇÖ´ÐÐij¸öÀàµÄ¾²Ì¬·½·¨£ºmethod.invoke(null, args);
5£©Ð½¨Ä³¶ÔÏóµÄʵÀý£º
public Object newInstance(String className, Object[] args) throws Exception {
Class newoneClass = Class.forName(className);
Class[] argsClass = new Class[args.length];
for (int i = 0, j = args.length; i < j; i++) {
&nb
Ïà¹ØÎĵµ£º
package com.fanxing.neibulei;
/**
*
* @author xiaxiaorui
*
*·ºÐÍ ÊÜÏÞ·ºÐÍ
*http://developer.51cto.com/art/200909/153983.htm
*/
class Info2<T>
{
private T var; // ¶¨Òå·ºÐͱäÁ¿
public T getVar() {
return var;
}
public void setVar(T var) {
this.var = var;
}
......
javaģʽ֮µ¥Àýģʽ£º
µ¥Àýģʽȷ±£Ò»¸öÀàÖ»ÓÐÒ»¸öʵÀý£¬×ÔÐÐÌṩÕâ¸öʵÀý²¢ÏòÕû¸öϵͳÌṩÕâ¸öʵÀý¡£
ÌØµã£º
1£¬Ò»¸öÀàÖ»ÄÜÓÐÒ»¸öʵÀý
2£¬×Ô¼º´´½¨Õâ¸öʵÀý
& ......
ÔÎÄ £º http://blog.csdn.net/sunboard/archive/2009/01/18/3831823.aspx
Ò»
¸öÈí¼þÉè¼ÆµÄºÃ»µ£¬ÎÒÏëºÜ´ó³Ì¶ÈÉÏÈ¡¾öÓÚËüµÄÕûÌå¼Ü¹¹£¬¶øÕâ¸öÕûÌå¼Ü¹¹Æäʵ¾ÍÊÇÄã¶ÔÕû¸öºê¹ÛÉÌÒµÒµÎñµÄ³éÏó¿ò¼Ü£¬µ±´ú±íÒµÎñÂß¼µÄ¸ß²ã³éÏó²ã½á¹¹
ºÏÀíʱ£¬Äãµ×²ãµÄ¾ßÌåʵÏÖÐèÒª¿¼Âǵľͽö½öÊÇһЩËã·¨ºÍһЩ¾ßÌåµÄÒµÎñʵÏÖÁË¡£µ±ÄãÐèÒªÔÙ¿ ......
1£©À¬»ø»ØÊÕµÄÁ½¸ö¹Ø¼üÒªËØ£º
·¢ÏÖÎÞÓöÔÏó¡£
»ØÊÕÎÞÓöÔÏóµÄÄÚ´æ¿Õ¼ä¡£
2£©6ÖÖÀ¬»ø»ØÊÕËã·¨£º
ÒýÓüÆÊý·¨£¬tracing Ëã·¨£¬compactingËã·¨£¬copying Ëã·¨£¬generationËã·¨£¬adaptiveËã·¨¡£
3£©detail£º
ÒýÓüÆÊý·¨(Reference Counting Collector)
ÒýÓüÆÊý·¨ÊÇΨһûÓÐʹÓøù¼¯µÄÀ¬»ø»ØÊÕµÄ ......