JAVA ·´Éä»úÖÆ
Äú²éѯµÄ¹Ø¼ü´ÊÊÇ£ºnewinstance object initargs ¡£Èç¹û´ò¿ªËÙ¶ÈÂý£¬¿ÉÒÔ³¢ÊÔ¿ìËٰ棻Èç¹ûÏë±£´æ¿ìÕÕ£¬¿ÉÒÔÌí¼Óµ½ËѲء£
(°Ù¶ÈºÍÍøÒ³http://bbs.iaiai.com/forum/read.php?tid=2690µÄ×÷ÕßÎ޹أ¬²»¶ÔÆäÄÚÈݸºÔð¡£°Ù¶È¿ìÕÕ½÷ÎªÍøÂç¹ÊÕÏʱ֮Ë÷Òý£¬²»´ú±í±»ËÑË÷ÍøÕ¾µÄ¼´Ê±Ò³Ãæ¡£)
Ö÷Ìâ : javaµÄ·´Éä»úÖÆ ʹÓõÀ¾ß©® ¸´ÖÆÁ´½Ó ©®ä¯ÀÀÆ÷Êղة®´òÓ¡
javaµÄ·´Éä»úÖÆ
javaµÄ·´Éä»úÖÆÒ»
ÔÚjavaÀïÃæÓÐÒ»ÖÖ·´Éä»úÖÆreflect£¬ÕâÊÇÆäËüÓïÑÔËùûÓеģ¬¿ÉÒÔ¶¯Ì¬´´½¨¶ÔÏóºÍ·½·¨£¬»¹ÓгÉÔ±±äÁ¿µÈ:
Ò».¶ÔÏó¶¯Ì¬´´½¨µÄ·½·¨ÈçÏ£º
ÎÒÃÇÐèҪʹÓõÄÓÐClassÀàºÍConstructorÀà,»¹ÓÐMethodºÍFieldÀà,¾ßÌåµÄʹÓ÷½·¨ÈçÏ£º
1.ʹÓÃClassÀàµÄClass.forName(String className)·½·¨µÃµ½Ò»¸öClass¶ÔÏó£¬
eg: Class aClass=Class.forName(Foo.class.getName());
»òÕß Class aClass=Class.forName("Foo");
2.µÃµ½Ò»¸öClass¶ÔÏóÖ®ºó£¬ÎÒÃÇ»¹ÐèÒª°ÑËüת»»³ÉÎÒÃÇÐèÒªµÄÀàÐͶÔÏó£¬
eg: Foo foo=(Foo)aClass.newInstance();
×¢Òâ´ËµØ·½µÄnewInstance()·½·¨Ö»Äܵ÷ÓÃFooÀàµÄ¹«ÓÐÎ޲ι¹Ô캯Êý£¬Èç¹ûûÓй¹Ô캯Êý
ÔòʹÓø¸ÀàµÄ¹«ÓÐÎ޲ι¹Ô캯Êý£¬Èç¹û±»ÖØÐ´ÁË£¬Ôò»á´´½¨¶ÔÏóʧ°Ü¡£
3.µÃµ½Á˶ÔÏóÖ®ºóÎÒÃǾͿÉÒÔÈÎÒâ°Ú²¼ËýÁË¡£
4.Èç¹ûÎÒÃǵĹ¹Ô캯ÊýÀïÃæÐèÒª´«Èë²ÎÊý£¬Ôõô°ì£¿
ÕâʱºòÎÒÃǾÍÐèҪʹÓÃConstructorÀàÁË£¬´´½¨·½·¨ÈçÏ£º
eg: Constructor ctor = aClass.getDeclaredConstructor(Class[] parameterTypes);
Èç¹ûÎÒÃÇÓÐÕâÑùÒ»¸öÀàÐèÒª¶¯Ì¬´´½¨¶ÔÏó£º
public class BB {
private int baby = 9;
public BB(int b) {
baby = b;
}
/**
* @return Returns the baby.
*/
public int getBaby() {
return baby;
}
/**
* @param baby
* The baby to set.
*/
public void setBaby(int baby) {
this.baby = baby;
}
}
ÄÇôÎÒÃÇÈçºÎÀ´×öÄØ£¿
Integer[] os = new Integer[1];
os[0] = new Integer(6);
Class cls = Class.forName(BB.class.getName());
Constructor ctor = cls.getDeclaredConstructor((new Class[] { int.class }));
BB bbb = (BB) ctor.newInstance(os);
System.out.println(bbb.getBaby());
¶þ.·½·¨µÄ¶¯Ì¬´´½¨£º
¼ÙÉèÉÏÃæµÄBBÀàÐèÒª¶¯Ì¬´´½¨getBaby()·½·¨£¬ÎÒÃǸÃÔõô×ö£¿ÕâʱºòÎÒÃÇÐèҪʹÓõ½
MethodÀàÁË£º
1.¶¨ÒåÒ»¸ö·½·¨m:
eg: Class cls = Cla
Ïà¹ØÎĵµ£º
Èý²½Ñ§»áJava Socket±à³Ì(1)
http://developer.51cto.com 2009-02-04 09:45 ØýÃû Java8 ÎÒÒªÆÀÂÛ(0)
? ÕªÒª£ºËùνsocketͨ³£Ò²³Æ×÷"Ì×½Ó×Ö"£¬ÓÃÓÚÃèÊöIPµØÖ·ºÍ¶Ë¿Ú£¬ÊÇÒ»¸öͨÐÅÁ´µÄ¾ä±ú¡£Ó¦ÓóÌÐòͨ³£Í¨¹ý"Ì×½Ó×Ö"ÏòÍøÂç·¢³öÇëÇó»òÕßÓ¦´ðÍøÂçÇëÇó¡£±¾ÎĽ«Java Socket±à³Ì·ÖΪÈý¸öѧϰ²½Ö裬ÖðÒ ......
´úÀíģʽµÄ×÷ÓÃÊÇ£ºÎªÆäËû¶ÔÏóÌṩһÖÖ´úÀíÒÔ¿ØÖƶÔÕâ¸ö¶ÔÏóµÄ·ÃÎÊ¡£
ÔÚijЩÇé¿öÏ£¬Ò»¸ö¿Í»§²»Ïë»òÕß²»ÄÜÖ±½ÓÒýÓÃÁíÒ»¸ö¶ÔÏ󣬶ø´úÀí¶ÔÏó¿ÉÒÔÔÚ¿Í»§¶ËºÍÄ¿±ê¶ÔÏóÖ®¼äÆðµ½ÖнéµÄ×÷Óá£
´úÀíģʽһ°ãÉæ¼°µ½µÄ½ÇÉ«ÓÐ
³éÏó½ÇÉ«£ºÉùÃ÷ÕæÊµ¶ÔÏóºÍ´úÀí¶ÔÏóµÄ¹«¹²½Ó¿Ú£¨Çó¾Ö³¤°ìʵÄÈË£©
´úÀí½ÇÉ«£º´úÀí¶ÔÏó½ÇÉ«ÄÚ²¿º¬ÓжÔÕæÊµ ......
ÕâÁ½Ìì×öÍêÁËÒÔǰ£¬CRMÏîÄ¿ÖУ¬Éè¼ÆÈ¨ÏÞÕâ¿ìµÄ´úÂ룬½ö¹©´ó¼Òѧϰ²Î¿¼¡£
±¾È¨ÏÞ¹ÜÀí²¿·ÖÉè¼ÆÈý²¿·Ö£º
µÚÒ»²¿·Ö Êý¾Ý¿â²¿·Ö
µÚ¶þ²¿·Ö ȨÏÞÀà
µÚÈý²¿·Ö ·ÖÅäȨÏÞ²¿·Ö
µÚËIJ¿·Ö Ò³Ãæ¿ØÖƲ¿·Ö
ÔÚÕâÀïÎÒÖ÷ÒªÉè¼ÆºóÈý²¿·ÖÔÂ룺
ȨÏÞÀàÉè¼ÆÔÂ룺
package com.qizhi.common;
/**
* È«¾Ö³£Á¿
*
&nbs ......
¹Ø¼ü×Ö£ºthrows,throw,try,catch,finally·Ö±ð´ú±íʲôÒâÒ壿ÔÚtry¿éÖпÉÒÔÅ׳öÒì³£Âð£¿
´ð£ºJavaͨ¹ýÃæÏò¶ÔÏóµÄ·½·¨½øÐÐÒì³£´¦Àí£¬°Ñ¸÷ÖÖ²»Í¬µÄÒì³£½øÐзÖÀ࣬²¢ÌṩÁËÁ¼ºÃµÄ½Ó¿Ú¡£ÔÚJavaÖУ¬Ã¿¸öÒì³£¶¼ÊÇÒ»¸ö¶ÔÏó£¬ËüÊÇThrowableÀà»òÆäËü×ÓÀàµÄʵÀý¡£µ±Ò»¸ö·½·¨³öÏÖÒì³£ºó±ãÅ׳öÒ»¸öÒì³£¶ÔÏ󣬸öÔÏóÖаüº¬ÓÐÒì³£ÐÅÏ¢£¬µ÷ ......
ÊÂÎñµÄÌØÐÔ£º
1) Ô×ÓÐÔ£¨atomicity£©£ºÊÂÎñÊÇÊý¾Ý¿âµÄÂß¼¹¤×÷µ¥Î»£¬¶øÇÒÊDZØÐëÊÇÔ×Ó¹¤×÷µ¥Î»£¬¶ÔÓÚÆäÊý¾ÝÐ޸ģ¬ÒªÃ´È«²¿Ö´ÐУ¬ÒªÃ´È«²¿²»Ö´ÐС£
2) Ò»ÖÂÐÔ£¨consistency£©£ºÊÂÎñÔÚÍê³Éʱ£¬±ØÐëÊÇËùÓеÄÊý¾Ý¶¼±£³ÖÒ»ÖÂ״̬¡£ÔÚÏà¹ØÊý¾Ý¿âÖУ¬ËùÓйæÔò¶¼±ØÐëÓ¦ÓÃÓÚÊÂÎñµÄÐ޸ģ¬ÒÔ±£³ÖËùÓÐÊý¾ÝµÄÍêÕûÐÔ¡£
3)&n ......