javaÏÂClass.forNameµÄ×÷ÓÃÊÇʲô£¬ÎªÊ²Ã´ÒªÊ¹ÓÃËü
Class.forName(xxx.xx.xx) ·µ»ØµÄÊÇÒ»¸öÀà
Ê×ÏÈÄãÒªÃ÷°×ÔÚjavaÀïÃæÈκÎclass¶¼Òª×°ÔØÔÚÐéÄâ»úÉϲÅÄÜÔËÐС£Õâ¾ä»°¾ÍÊÇ×°ÔØÀàÓõÄ(ºÍnew ²»Ò»Ñù£¬Òª·ÖÇå³þ)¡£
ÖÁÓÚʲôʱºòÓã¬Äã¿ÉÒÔ¿¼ÂÇÒ»ÏÂÕâ¸öÎÊÌ⣬¸øÄãÒ»¸ö×Ö·û´®±äÁ¿£¬Ëü´ú±íÒ»¸öÀàµÄ°üÃûºÍÀàÃû£¬ÄãÔõôʵÀý»¯Ëü£¿Ö»ÓÐÄãÌáµ½µÄÕâ¸ö·½·¨ÁË£¬²»¹ýÒªÔÙ¼ÓÒ»µã¡£
A a = (A)Class.forName("pacage.A").newInstance();
ÕâºÍÄã
A a = new A()£»
ÊÇÒ»ÑùµÄЧ¹û¡£
¹ØÓÚ²¹³äµÄÎÊÌâ
´ð°¸Êǿ϶¨µÄ£¬jvm»áÖ´Ðо²Ì¬´úÂë¶Î£¬ÄãÒª¼Çסһ¸ö¸ÅÄ¾²Ì¬´úÂëÊǺÍclass°ó¶¨µÄ£¬class×°ÔØ³É¹¦¾Í±íʾִÐÐÁËÄãµÄ¾²Ì¬´úÂëÁË¡£¶øÇÒÒÔºó²»»áÔÙ×ßÕâ¶Î¾²Ì¬´úÂëÁË¡£
Class.forName(xxx.xx.xx) ·µ»ØµÄÊÇÒ»¸öÀà
Class.forName(xxx.xx.xx);µÄ×÷ÓÃÊÇÒªÇóJVM²éÕÒ²¢¼ÓÔØÖ¸¶¨µÄÀ࣬Ҳ¾ÍÊÇ˵JVM»áÖ´ÐиÃÀàµÄ¾²Ì¬´úÂë¶Î
¶¯Ì¬¼ÓÔØºÍ´´½¨Class ¶ÔÏ󣬱ÈÈçÏë¸ù¾ÝÓû§ÊäÈëµÄ×Ö·û´®À´´´½¨¶ÔÏó
String str = Óû§ÊäÈëµÄ×Ö·û´®
Class t = Class.forName(str);
t.newInstance();
ÔÚ³õʼ»¯Ò»¸öÀ࣬Éú³ÉÒ»¸öʵÀýµÄʱºò£¬newInstance()·½·¨ºÍnew¹Ø¼ü×Ö³ýÁËÒ»¸öÊÇ·½·¨£¬Ò»¸öÊǹؼü×ÖÍ⣬×îÖ÷ÒªÓÐÊ²Ã´Çø±ð£¿ËüÃǵÄÇø±ðÔÚÓÚ´´½¨¶ÔÏóµÄ·½Ê½²»Ò»Ñù£¬Ç°ÕßÊÇʹÓÃÀà¼ÓÔØ»úÖÆ£¬ºóÕßÊÇ´´½¨Ò»¸öÐÂÀà¡£ÄÇôΪʲô»áÓÐÁ½ÖÖ´´½¨¶ÔÏó·½Ê½£¿ÕâÖ÷Òª¿¼Âǵ½Èí¼þµÄ¿ÉÉìËõ¡¢¿ÉÀ©Õ¹ºÍ¿ÉÖØÓõÈÈí¼þÉè¼ÆË¼Ïë¡£
JavaÖй¤³§Ä£Ê½¾³£Ê¹ÓÃnewInstance()·½·¨À´´´½¨¶ÔÏó£¬Òò´Ë´ÓΪʲôҪʹÓù¤³§Ä£Ê½ÉÏ¿ÉÒÔÕÒµ½¾ßÌå´ð°¸¡£ ÀýÈ磺
class c = Class.forName(“Example”);
factory = (ExampleInterface)c.newInstance();
ÆäÖÐExampleInterfaceÊÇExampleµÄ½Ó¿Ú£¬¿ÉÒÔд³ÉÈçÏÂÐÎʽ£º
String className = "Example";
class c = Class.forName(className);
factory = (ExampleInterface)c.newInstance();
½øÒ»²½¿ÉÒÔд³ÉÈçÏÂÐÎʽ£º
String className = readfromXMlConfig;//´Óxml ÅäÖÃÎļþÖлñµÃ×Ö·û´®
class c = Class.forName(className);
factory = (ExampleInterface)c.newInstance();
ÉÏÃæ´úÂëÒѾ²»´æÔÚExampleµÄÀàÃû³Æ£¬ËüµÄÓŵãÊÇ£¬ÎÞÂÛExampleÀàÔõô±ä»¯£¬ÉÏÊö´úÂë²»±ä£¬ÉõÖÁ¿ÉÒÔ¸ü»»ExampleµÄÐÖµÜÀàExample2 , Example3 , Example4……£¬Ö»ÒªËûÃǼ̳ÐExampleInterface¾Í¿ÉÒÔ¡£
´ÓJVMµÄ½Ç¶È¿´£¬ÎÒÃÇʹÓùؼü×Önew´´½¨Ò»¸öÀàµÄʱºò£¬Õâ¸öÀà¿ÉÒÔûÓб»¼ÓÔØ¡£µ«ÊÇʹÓÃnewInstance()·½·¨µÄʱºò£¬¾Í±ØÐ
Ïà¹ØÎĵµ£º
override¿ÉÒÔ·ÒëΪ¸²¸Ç£¬´Ó×ÖÃæ¾Í¿ÉÒÔÖªµÀ£¬ËüÊǸ²¸ÇÁËÒ»¸ö·½·¨²¢ÇÒ¶ÔÆäÖØÐ´£¬ÒÔÇó´ïµ½²»Í¬µÄ×÷Ó᣶ÔÎÒÃÇÀ´Ëµ×îÊìϤµÄ¸²¸Ç¾ÍÊǶԽӿڷ½·¨µÄʵÏÖ£¬ÔÚ½Ó¿ÚÖÐÒ»°ãÖ»ÊǶԷ½·¨½øÐÐÁËÉùÃ÷£¬¶øÎÒÃÇÔÚʵÏÖʱ£¬¾ÍÐèҪʵÏÖ½Ó¿ÚÉùÃ÷µÄËùÓз½·¨¡£³ýÁËÕâ¸öµäÐ͵ÄÓ÷¨ÒÔÍ⣬ÎÒÃÇÔڼ̳ÐÖÐÒ²¿ÉÄÜ»áÔÚ×ÓÀา¸Ç¸¸À ......
½ñÌìûʸɡ££¬ÄÃJavaÖеÄmainº¯ÊýÀ´Ịֽ̀¬¡£¡£»¹ÇëÖîλָµã°¡£¬£¬
public static void main(String args [])
{
.....
}
ÕâÊÇ´ó¼ÒÒ»°ãµÄд·¨°É£¬ÕâÀïÎÒÏëÌ̵ֽÄÖ÷ÒªÓÐÒÔϼ¸µã£º
1.ËüµÄ²ÎÊýÎÊÌ⣬ÄǸö²ÎÊýµ¹µ×ÓкÎÓÃÄØ£¬£¬ÕâÊǺÜÁîÈËÃÔ»óµÄ£¬ÕâÀï×Ô¼ºÐ´Á˸öÀý×ÓÊÔÁËһϣ¬µ«ÊdzöÏÖÁËÒì³££º
class A
{
......
ÔÚһЩ¹æÄ£ÉÔ´óµÄÓ¦ÓÃÖУ¬JavaÐéÄâ»ú£¨JVM£©µÄÄÚ´æÉèÖÃÓÈÎªÖØÒª£¬ÏëÔÚÏîÄ¿ÖÐÈ¡µÃºÃµÄЧÂÊ£¬GC£¨À¬»ø»ØÊÕ£©µÄÉèÖÃÊǵÚÒ»²½¡£
PermGen space£ºÈ«³ÆÊÇPermanent Generation space.¾ÍÊÇ˵ÊÇÓÀ¾Ã±£´æµÄÇøÓò,ÓÃÓÚ´æ·ÅClassºÍMetaÐÅÏ¢,ClassÔÚ±»LoadµÄʱºò±»·ÅÈë¸ÃÇøÓòHeap space£º´æ·ÅInstance¡£
GC(Garbage Collection)Ó¦¸Ã²»» ......
DOMÊÇ»ùÓÚÆ½Ì¨¡¢ÓïÑÔÎ޹صĹٷ½W3C±ê×¼¡£»ùÓÚÊ÷µÄ²ã´Î£¬ÆäÓŵãÊÇ¿ÉÒÔÒÆÖ²£¬±à³ÌÈÝÒ×£¬¿ª·¢ÈËÔ±Ö»ÐèÒªµ÷Óý¨Ê÷µÄÖ¸Áî¡£ÆäȱµãÊǼÓÔØ´óÎļþ²»ÀíÏë¡£
¡¡¡¡SAXÊÇ»ùÓÚʼþÄ£Ð͵ģ¬ËüÔÚ½âÎö XML ÎĵµµÄʱºò¿ÉÒÔ´¥·¢Ò»ÏµÁеÄʼþ£¬µ±·¢ÏÖ¸ø¶¨µÄtagµÄʱºò£¬Ëü¿ÉÒÔ¼¤»îÒ»¸ö»Øµ÷·½·¨£¬¸æË߸÷½·¨Öƶ¨µÄ±êÇ©ÒѾÕÒµ½¡£ÀàËÆÓëÁ÷ýÌåµÄ½ ......