ÉîÈë̽ÌÖ Java Àà¼ÓÔØÆ÷
Àà¼ÓÔØÆ÷ÊÇ Java ÓïÑÔµÄÒ»¸ö´´Ð£¬Ò²ÊÇ Java ÓïÑÔÁ÷ÐеÄÖØÒªÔÒòÖ®Ò»¡£ËüʹµÃ Java Àà¿ÉÒÔ±»¶¯Ì¬¼ÓÔØµ½ Java ÐéÄâ»úÖв¢Ö´ÐС£Àà¼ÓÔØÆ÷´Ó JDK 1.0 ¾Í³öÏÖÁË£¬×î³õÊÇΪÁËÂú×ã Java Applet µÄÐèÒª¶ø¿ª·¢³öÀ´µÄ¡£Java Applet ÐèÒª´ÓÔ¶³ÌÏÂÔØ Java ÀàÎļþµ½ä¯ÀÀÆ÷Öв¢Ö´ÐС£ÏÖÔÚÀà¼ÓÔØÆ÷ÔÚ Web ÈÝÆ÷ºÍ OSGi Öеõ½Á˹㷺µÄʹÓá£Ò»°ãÀ´Ëµ£¬Java Ó¦ÓõĿª·¢ÈËÔ±²»ÐèÒªÖ±½ÓͬÀà¼ÓÔØÆ÷½øÐн»»¥¡£Java ÐéÄâ»úĬÈϵÄÐÐΪ¾ÍÒѾ×ã¹»Âú×ã´ó¶àÊýÇé¿öµÄÐèÇóÁË¡£²»¹ýÈç¹ûÓöµ½ÁËÐèÒªÓëÀà¼ÓÔØÆ÷½øÐн»»¥µÄÇé¿ö£¬¶ø¶ÔÀà¼ÓÔØÆ÷µÄ»úÖÆÓÖ²»ÊǺÜÁ˽âµÄ»°£¬¾ÍºÜÈÝÒ×»¨´óÁ¿µÄʱ¼äÈ¥µ÷ÊÔ ClassNotFoundException ºÍ NoClassDefFoundError µÈÒì³£¡£±¾ÎĽ«Ïêϸ½éÉÜ Java µÄÀà¼ÓÔØÆ÷£¬°ïÖú¶ÁÕßÉî¿ÌÀí½â Java ÓïÑÔÖеÄÕâ¸öÖØÒª¸ÅÄî¡£ÏÂÃæÊ×ÏȽéÉÜһЩÏà¹ØµÄ»ù±¾¸ÅÄî¡£
Àà¼ÓÔØÆ÷»ù±¾¸ÅÄî
¹ËÃû˼Ò壬Àà¼ÓÔØÆ÷£¨class loader£©ÓÃÀ´¼ÓÔØ Java Àൽ Java ÐéÄâ»úÖС£Ò»°ãÀ´Ëµ£¬Java ÐéÄâ»úʹÓà Java ÀàµÄ·½Ê½ÈçÏ£ºJava Ô´³ÌÐò£¨.java Îļþ£©ÔÚ¾¹ý Java ±àÒëÆ÷±àÒëÖ®ºó¾Í±»×ª»»³É Java ×Ö½Ú´úÂ루.class Îļþ£©¡£Àà¼ÓÔØÆ÷¸ºÔð¶ÁÈ¡ Java ×Ö½Ú´úÂ룬²¢×ª»»³É java.lang.Class ÀàµÄÒ»¸öʵÀý¡£Ã¿¸öÕâÑùµÄʵÀýÓÃÀ´±íʾһ¸ö Java Àࡣͨ¹ý´ËʵÀýµÄ newInstance()·½·¨¾Í¿ÉÒÔ´´½¨³ö¸ÃÀàµÄÒ»¸ö¶ÔÏó¡£Êµ¼ÊµÄÇé¿ö¿ÉÄܸü¼Ó¸´ÔÓ£¬±ÈÈç Java ×Ö½Ú´úÂë¿ÉÄÜÊÇͨ¹ý¹¤¾ß¶¯Ì¬Éú³ÉµÄ£¬Ò²¿ÉÄÜÊÇͨ¹ýÍøÂçÏÂÔØµÄ¡£
»ù±¾ÉÏËùÓеÄÀà¼ÓÔØÆ÷¶¼ÊÇ java.lang.ClassLoader ÀàµÄÒ»¸öʵÀý¡£ÏÂÃæÏêϸ½éÉÜÕâ¸ö Java Àà¡£
java.lang.ClassLoader Àà½éÉÜ
java.lang.ClassLoader ÀàµÄ»ù±¾Ö°Ôð¾ÍÊǸù¾ÝÒ»¸öÖ¸¶¨µÄÀàµÄÃû³Æ£¬ÕÒµ½»òÕßÉú³ÉÆä¶ÔÓ¦µÄ×Ö½Ú´úÂ룬Ȼºó´ÓÕâЩ×Ö½Ú´úÂëÖж¨Òå³öÒ»¸ö Java À࣬¼´ java.lang.Class ÀàµÄÒ»¸öʵÀý¡£³ý´ËÖ®Í⣬ClassLoader »¹¸ºÔð¼ÓÔØ Java Ó¦ÓÃËùÐèµÄ×ÊÔ´£¬ÈçͼÏñÎļþºÍÅäÖÃÎļþµÈ¡£²»¹ý±¾ÎÄÖ»ÌÖÂÛÆä¼ÓÔØÀàµÄ¹¦ÄÜ¡£ÎªÁËÍê³É¼ÓÔØÀàµÄÕâ¸öÖ°Ôð£¬ClassLoader ÌṩÁËһϵÁеķ½·¨£¬±È½ÏÖØÒªµÄ·½·¨Èç ±í 1 Ëùʾ¡£¹ØÓÚÕâЩ·½·¨µÄϸ½Ú»áÔÚÏÂÃæ½øÐнéÉÜ¡£
±í 1. ClassLoader ÖÐÓë¼ÓÔØÀàÏà¹ØµÄ·½·¨
·½·¨ËµÃ÷
getParent()
·µ»Ø¸ÃÀà¼ÓÔØÆ÷µÄ¸¸Àà¼ÓÔØÆ÷¡£
loadClass(String name)
¼ÓÔØÃû³ÆÎª name µÄÀ࣬·µ»ØµÄ½á¹ûÊÇ java.lang.Class ÀàµÄʵÀý¡£
findClass(String name)
²éÕÒÃû³ÆÎª name µÄÀ࣬·µ»ØµÄ½á¹ûÊÇ java.lang.Class ÀàµÄʵÀý¡£
findLoadedClass(String name)
²éÕÒÃû³ÆÎª nam
Ïà¹ØÎĵµ£º
1.final¹Ø¼ü×ÖÐÞÊÎÀàʱ£¬ËµÃ÷ÆäÀ಻ÄÜÓÐ×ÓÀ࣬Ҳ¾ÍÊÇ˵¸ÃÀ಻Äܱ»¼Ì³Ð£¬¸ÃÀàµÄ³ÉÔ±±äÁ¿ÔÚÕâÀォ²»Æð×÷Óá£
2.final¹Ø¼ü×ÖÐÞÊη½·¨Ê±£¬ËµÃ÷¸Ã·½·¨²»Äܱ»ÖØÐ´£¬ÒòΪÀà¶¼²»Äܱ»¼Ì³ÐÁË£¬·½·¨¾Í¸ü²»ÄÜÖØÐ´ÁË¡£
3.ÀàÀï¿ÉÒÔº¬ÓÐfinal¹Ø¼ü×ÖÐÞÊεķ½·¨¡£
4.ÔÚjavaÀ³éÏóÀà×îÉÙÒªº¬ÓÐÒ»¸ö³éÏó·½·¨£¬ÈÃËüµÄ×ÓÀàȥʵÏÖÕâ¸ö³éÏó·½· ......
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
public class CipherTest {
public static void main(String[] args) {
try {
byte[] keydata = { (byte) 0x00, (byte) 0x01, (byte) 0x02,
(byte) 0x03, (byte) 0x04, (byte) 0x05, (byte) 0x06,
......
import java.util.Enumeration;
public class CipherTest implements Enumeration {
private int N;
private int c[], k;
private Object[] objs;
public CipherTest(Object[] items) {
N = items.length;
c = new int[N + 1];
for (int i = 0; i <= N; i++)
c[i] = i;
objs = items;
k = 1 ......
һЩjavaÀàÖÐΪʲôÐèÒªÖØÔØ serialVersionUID ÊôÐÔ¡£
ÔÚJavaÖУ¬Èí¼þµÄ¼æ
ÈÝÐÔÊÇÒ»¸ö´óÎÊÌ⣬ÓÈÆäÔÚʹÓõ½¶ÔÏó´®ÐÐÐÔµÄʱºò£¬ÄÇôÔÚijһ¸ö¶ÔÏóÒѾ±»´®Ðл¯ÁË£¬¿ÉÊÇÕâ¸ö¶ÔÏóÓÖ±»Ð޸ĺóÖØÐ²¿ÊðÁË£¬ÄÇôÔÚÕâÖÖÇé¿öÏ£¬
ÓÃÀÏÈí¼þÀ´¶ÁÈ¡ÐÂÎļþ¸ñʽËäÈ»²»ÊÇʲôÄÑÊ£¬µ«ÊÇÓпÉÄܶªÊ§Ò»Ð©ÐÅÏ¢¡£
serialVersionUID
À´½â ......
public class OuterClass
{
public class InnerClass
{
public int code = 100;
}
public static void main(String[] args)
{
OuterClass outer = new OuterClass();
OuterClass.InnerClass o = outer.new InnerClass();
System. ......