¡¾×ª¡¿JavaÖÐtoString()·½·¨
1£®toString£¨£©·½·¨
ObjectÀà¾ßÓÐÒ»¸ötoString()·½·¨£¬Äã´´½¨µÄÿ¸öÀà¶¼»á¼Ì³Ð¸Ã·½·¨¡£Ëü·µ»Ø¶ÔÏóµÄÒ»¸öString±íʾ£¬²¢ÇÒ¶ÔÓÚµ÷ÊԷdz£ÓаïÖú¡£È»¶ø¶ÔÓÚĬÈϵÄtoString()·½·¨ÍùÍù²»ÄÜÂú×ãÐèÇó£¬ÐèÒª¸²¸ÇÕâ¸ö·½·¨¡£
toString£¨£©·½·¨½«¶ÔÏóת»»Îª×Ö·û´®¡£¿´ÒÔÏ´úÂ룺
package sample;
class Villain {
private String name;
protected void set(String nm) {
name = nm;
}
public Villain(String name) {
this.name = name;
}
public String toString() {
return "I'm a Villain and my name is " + name;
}
}
public class Orc extends Villain {
private int orcNumber;
public Orc(String name, int orcNumber) {
super(name);
this.orcNumber = orcNumber;
}
public void change(String name, int orcNumber) {
set(name);
this.orcNumber = orcNumber;
}
public String toString() {
return "Orc" + orcNumber + ":" + super.toString();
}
public static void main(String[] args) {
Orc orc = new Orc("Limburger", 12);
System.out.println(orc);
orc.change("Bob", 19);
System.out.println(orc);
}
}
½á¹û£º
sample.Orc@11b86e7
sample.Orc@11b86e7
Èç¹ûÈ¥µô×¢ÊÍ£¬¼´¼ÓÈë2¸ötoString£¨£©·½·¨ºó£¬µÃµ½
½á¹û£º
Orc12:I'm a Villain and my name is Limburger
Orc19:I'm a Villain and my name is Bob
2£®ÔÚÈÝÆ÷ÀàÖÐʹÓÃtoString()
±àдһ¸ö¹¤¾ßÀ࣬ÓÃÓÚÔÚ¿ØÖÆÌ¨Êä³öIterator¡£
import java.
Ïà¹ØÎĵµ£º
Java¶¯Ì¬´úÀíÀàλÓÚjava.lang.reflect°üÏ£¬Ò»°ãÖ÷񻃾¼°µ½ÒÔÏÂÁ½¸öÀࣺ
(1)Interface InvocationHandler£º¸Ã½Ó¿ÚÖнö¶¨ÒåÁËÒ»¸ö·½·¨
§public object invoke(Object obj,Method method, Object[] args)
ÔÚʵ¼ÊʹÓÃʱ£¬µÚÒ»¸ö²ÎÊýobjÒ»°ãÊÇÖ¸´úÀíÀ࣬methodÊDZ»´úÀíµÄ·½·¨£¬ÈçÉÏÀýÖеÄrequest()£¬argsΪ¸ ......
¶¯Ì¬´úÀíÊÇÖ¸¿Í»§Í¨¹ý´úÀíÀàÀ´µ÷ÓÃÆäËü¶ÔÏóµÄ·½·¨
¶¯Ì¬´úÀíʹÓó¡ºÏ:
•
Ô¶³Ì·½·¨µ÷ÓÃ(RMI)
•
1.´´½¨Ò»¸öʵÏÖ½Ó¿ÚInvocationHandlerµÄÀ࣬Ëü±ØÐëʵÏÖinvoke·½·¨
2.´´½¨±»´úÀíµÄÀàÒÔ¼°½Ó¿Ú
3.ͨ¹ýProxyµÄ¾²Ì¬·½·¨
newProxyInstance(ClassLoader loader, Class[] interfaces, Invocat ......
Õâ±¾ÊéÏêϸ½²½âÁËģʽÀíÂÛµÄÓÉÀ´£¨ºÜ¶àÈË¿ÉÄܲ»ÖªµÀģʽÀíÂÛÓëÖйúµÀ¼Ò˼ÏëµÄÔ¨Ô´£©£¬ÃæÏò¶ÔÏóµÄÈí¼þÉè¼ÆÔÔò£¬Ò»Ö±½²µ½¶þÊ®¼¸¸öÉè¼ÆÄ£Ê½£¬ÒÔ¼°ÕâЩģʽÔÚJavaÓïÑÔÖеÄʵÏֵȵȡ£ÊéÖиø³öÁË´óÁ¿À´×Ô»ª¶û½ÖϵͳµÄÕæÊµÏîÄ¿µÄÀý×Ó£¬ÓÃÀ´½²½âÉè¼ÆÄ£Ê½ÔÚϵͳÉè¼ÆÖеÄÓ¦ÓᣠÕâ±¾Êé´¦ÓÚÀíÂÛºÍʵ¼ùÖ®¼ä£¬ÊÇÒ»±¾¶¨Î»¶ÀÌØ¡¢·ç¸ñ¶ÀÌØµ ......
from
http://hi.baidu.com/18276393/blog/item/f6efc9d77ee7bc2806088b61.html
ÔÎÄ
»ù±¾ÀàÐÍ£¬»òÕß½Ð×öÄÚÖÃÀàÐÍ£¬ÊÇJAVA
ÖÐ
²»Í¬ÓÚÀàµÄÌØÊâÀàÐÍ¡£ËüÃÇÊÇÎÒÃDZà³ÌÖÐʹÓÃ×îÆµ·±µÄÀàÐÍ£¬Òò´ËÃæÊÔ
ÌâÖÐÒ²×ÜÉÙ²»ÁËËü
ÃǵÄÉíÓ°£¬ÔÚÕâÆªÎÄÕÂÖÐÎÒÃǽ«´ÓÃæÊÔÖг£¿¼µÄ¼¸¸ö·½ÃæÀ´»Ø¹ËÒ»ÏÂÓë»ù±¾ÀàÐÍÏà¹ØµÄ֪ʶ¡£
»ù±¾ÀàÐ͹²Ó ......
Java™ 5.0 ƽ̨µÄ IBM ʵÏÖÖÐÐµĹ²ÏíÀàÌØÐÔÌṩÁËÒ»ÖÖÍêȫ͸Ã÷ºÍ¶¯Ì¬µÄ·½·¨£¬¿ÉÒÔ¹²ÏíÒÑ¾×°ÔØµÄËùÓÐÀ࣬¶ø²»»á¶Ô¹²ÏíÀàÊý¾ÝµÄ JVM Ê©¼ÓÏÞÖÆ¡£Õâ¸öÌØÐÔΪ¼õÉÙÐéÄâÄÚ´æÕ¼Óú͸ĽøÆô¶¯Ê±¼äÌṩÁËÒ»¸ö¼òµ¥ÇÒÁé»îµÄ½â¾ö·½°¸£¬´ó¶àÊýÓ¦ÓóÌÐò¶¼Äܹ»Òò´ËÊÜÒæ¡£±¾ÎÄÌÖÂÛÕâ¸öÌØÐÔÊÇÈçºÎ¹¤×÷µÄ¡¢ÈçºÎʹÓÃËüÒÔ¼°ºÎʱʹÓÃËü£ ......