Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java Reflect ·´Éä ѧϰ±Ê¼Ç3 ²Ù×÷

       Java Reflect±àд ͨÓÃÊý×éÀ©Õ¹Àà
 
package com.accp.array;

import java.lang.reflect.Array;

public class GrowArrayTest {
public static void main(String[] args) {
Integer[] array = {1,2,3,4}; //ͨÓÃÀ©Õ¹
arrayPrint(array);
array = (Integer[])goodArrayGrow(array);
arrayPrint(array);


String[] str = {"xw","xz"};
arrayPrint(str);
str = (String[])badArrayGrow(str); //»á±¨ClassCastExceptionÒì³£,ÎÞ·¨½«Objectת»»³ÉStringÀàÐÍ
arrayPrint(str);

int[] a = null;
goodArrayGrow(a);
arrayPrint(a);

}

public static Object goodArrayGrow(Object o) {
Class clazz = o.getClass(); //µÃµ½ÀàÐÍÐÅÏ¢
if (!clazz.isArray())
return null;

Class type = clazz.getComponentType(); //µÃµ½oµÄÀàÐÍ
int newLength = Array.getLength(o) * 11 / 10 + 10;

Object newArray = Array.newInstance(type, newLength); //´´½¨Ò»¸öеÄArray, type = clazz.getComponentype()
System.arraycopy(o, 0, newArray, 0, Array.getLength(o));
return newArray;
}

public static Object[] badArrayGrow(Object[] o){
int newLength = o.length * 11 /10 +10;
Object[] newArray = new Object[o.length];
System.arraycopy(o, 0, newArray, 0, o.length);
return newArray;
}

public static void arrayPrint(Object a) { // ±éÀúÊä³öÊý×éÖµ


Class clazz = a.getClass(); // µÃµ½ÀàÐÍÐÅÏ¢
if (!clazz.isArray())
return;

Class type = clazz.getComponentType(); // µÃµ½ÀàÐÍ
Integer length = Array.getLength(a); // µÃµ½³¤¶È

System.out.print(type.getName() + "[" + length + "]={"); // ¸ñʽ»¯Êä³ö

for (int i = 0; i < Array.getLength(a); i++)
System.out.print(Array.get(a, i) + " ");
System.out.println("}");

}
}
  


Ïà¹ØÎĵµ£º

javaÓÅ»¯Õ¼ÓÃÄÚ´æµÄ·½·¨(Ò»)

java×öµÄϵͳ¸øÈ˵ÄÓ¡ÏóÊÇʲô£¿Õ¼Äڴ棡˵µÀÕâ¾ä»°¾Í»áÓÐN¶àÈËÕ¾³öÀ´Îªjava±ç»¤£¬²¢¾Ù³öÒ»¶ÑµÄÐÔÄܲâÊÔ±¨¸æÀ´Ö¤Ã÷ÕâÒ»µã¡£Æäʵ´ÓÀíÂÛÉÏÀ´½²java×öµÄϵͳ²¢²»±ÈÆäËûÓïÑÔ¿ª·¢³öÀ´µÄϵͳ¸üÕ¼ÓÃÄڴ棬ÄÇôΪʲôȴÓÐÕâôN¶àÀíÓÉÀ´Ö¤Ã÷ËüȷʵռÄÚ´æÄØ£¿Á½¸ö×Ö£¬ÂªÏ°¡£
£¨1£©±ðÓÃnew Boolean()¡£
Ôںܶೡ¾°ÖÐBooleanÀàÐÍÊDZØÐ ......

Java¿ª·¢OracleÊý¾Ý¿âµÄORA 01000´íÎó½âÎö

ºÜ¶àÅóÓÑÔÚJava¿ª·¢ÖУ¬Ê¹ÓÃOracleÊý¾Ý¿âµÄʱºò£¬¾­³£»áÅöµ½ÓÐORA-01000: maximum open cursors exceeded.µÄ´íÎó¡£
ʵ¼ÊÉÏ£¬Õâ¸ö´íÎóµÄÔ­Òò£¬Ö÷Òª»¹ÊÇ´úÂëÎÊÌâÒýÆðµÄ¡£
ora-01000: maximum open cursors exceeded.
±íʾÒѾ­´ïµ½Ò»¸ö½ø³Ì´ò¿ªµÄ×î´óÓαêÊý¡£
ÕâÑùµÄ´íÎóºÜÈÝÒ׳öÏÖÔÚJava´úÂëÖеÄÖ÷ÒªÔ­ÒòÊÇ£ºJava´úÂëÔÚÖ´ ......

Java·´Éä»úÖÆ:Constructor!

import org.junit.Test;
public class ConstructorTest {
@Test @SuppressWarnings("unchecked")
public void testConstructor(){
try {
Class clazz = Class.forName("cn.vicky.utils.User");
Method method = clazz.getDeclaredMethod("getName");
Constructor<? extends Live> constructor = ......

JavaÒì³£´¦Àí

ÁùÖÖÒì³£´¦ÀíµÄªϰ
    Äã¾õµÃ×Ô¼ºÊÇÒ»¸öJavaר¼ÒÂð£¿ÊÇ·ñ¿Ï¶¨×Ô¼ºÒѾ­È«ÃæÕÆÎÕÁËJavaµÄÒì³£´¦Àí»úÖÆ£¿ÔÚÏÂÃæÕâ¶Î´úÂëÖУ¬ÄãÄܹ»Ñ¸ËÙÕÒ³öÒì³£´¦ÀíµÄÁù¸öÎÊÌâÂð£¿
Java´úÂë
OutputStreamWriter out = ...       
java.sql.Connection conn =& ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ