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

Java Reflect ·´Éä»úÖÆ ѧϰ±Ê¼Ç [ÍòÄÜtoString·½·¨]

ÀûÓÃJava Reflect»úÖÆ±àдÍòÄÜtoString()·½·¨:
 
 
package com.accp.test.filed;

import java.lang.reflect.AccessibleObject;
import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.List;

public class ObjectAnalyzer {

private List<Object> visited = new ArrayList<Object>();

public String toString(Object obj) {

if (obj == null)
return null; // Èç¹ûobjΪ¿Õ..·µ»Ønull
if (visited.contains(obj))
return "..."; // Èç¹ûvisitedÖÐÒѾ­°üº¬obj,·µ»Ø...

visited.add(obj);

Class c1 = obj.getClass(); // µÃµ½ÔËÐÐʱ¶ÔÏó

if (c1 == String.class)
return (String) obj; // Èç¹ûc1ÊÇStringÀàÐÍ,Ö±½Óת»»

if (c1.isArray()) { // Èç¹ûÊÇÊý×éÀàÐÍ
String r = c1.getComponentType() + "[]{"; // µÃµ½¸ÃÊý×é×é¼þÀàÐ͵ÄClass

for (int i = 0; i < Array.getLength(obj); i++) {
if (i > 0)
r += ",";
Object var = Array.get(obj, i); // È¡µÃobj[i]ÔªËØµÄÖµ
if (c1.getComponentType().isPrimitive()) // Èç¹ûΪ»ù±¾ÀàÐÍ
r += var;
else
r += toString(var); // µÝ¹éµ÷ÓÃ
}
return r + "}";
}

String r = c1.getName(); // µÃµ½objÃû³Æ

// ¼ì²é±¾ÀàÓòºÍËùÓг¬ÀàÓò
do {
r += "[";
Field[] fields = c1.getDeclaredFields(); // µÃµ½±¾ÀàºÍ³¬ÀàËùÓÐÓò
AccessibleObject.setAccessible(fields, true); // ½«ËùÓÐÓòÉèÖÃΪ¿É·ÃÎʵÄ.

for (Field field : fields) {
if (!Modifier.isStatic(field.getModifiers())) {
if (!r.endsWith("["))
r += ",";
r += field.getName() + "=";

try {
Class type = field.getType(); // µÃµ½×Ö¶ÎÀàÐÍ
Object var =


Ïà¹ØÎĵµ£º

JavaÖÐListЧÂʵıȽÏ

¡¡¡¡inkfishÔ­´´£¬ÇëÎðÉÌÒµÐÔÖÊ×ªÔØ£¬×ªÔØÇë×¢Ã÷À´Ô´£¨http://blog.csdn.net/inkfish
£©¡£
¡¡¡¡Java Collections Framework(JCF)
ÊÇJava SEÖÐÒ»¸ö»ù±¾µÄÀ༯£¬¼¸ºõËùÓеÄÏîÄ¿¶¼»áÓõ½£¬ÆäÖеÄList
ÔòÊÇJCFÖÐ×î×î³£ÓõÄÒ»¸ö½Ó¿Ú¡£Î§ÈÆList
½Ó¿Ú£¬ÓкܶàʵÏÖ£¬ÖîÈç³£ÓõÄArrayList
¡¢LinkedList
¡¢Vector
¡¢Stack
£¬ ......

JavaÄÚ´æÊÍ·ÅÐĵÃ

1 Èç¹ûÒ»¿éÄÚ´æÇøÓòÄܹ»Öظ´ÀûÓã¬×îºÃ²»ÒªÉêÇëеġ£Õâ¸öÄÚ´æÇøÓòÓпÉÄÜÊÇϵͳµÄÒ»¸öÀ࣬×Ô¼ºµÄÒ»¸öÄÚ²¿ÓÐÊý×éÔªËØ£¬»òÕßÄܹ»·Å´óÁ¿Êý¾ÝµÄ½á¹¹¡£
2 ×îºÃ²»ÒªÔÚÑ­»·ÀïÃæÉêÇëÄڴ棬ѭ»·Ô½´ó£¬Ô½»µÊ¡£»»¾ä»°Ëµ£¬ÉêÇëÄÚ´æÆµÂʱðÌ«¸ß¡£ºÃ±ÈÒ»¸öÈËÿ¶Ù³ÔÁ½Íë·¹ÕýºÃ£¬ÉíÌåµÄÏû»¯ÏµÍ³¿ÉÒÔ³ÐÊÜ£¬Èç¹ûÈÃËûÒ»¶Ù°ÑÊ®¶ÙµÄ¶¼³Ôµô£¬²»ÕÍ ......

java IO

JavaÓïÑÔµÄÊäÈëÊä³ö¹¦ÄÜÊÇÊ®·ÖÇ¿´ó¶øÁé»îµÄ£¬ÃÀÖв»×ãµÄÊÇ¿´ÉÏÈ¥ÊäÈëÊä³öµÄ´úÂë²¢²»ÊǺܼò½à£¬ÒòΪÄãÍùÍùÐèÒª°ü×°Ðí¶à²»Í¬µÄ¶ÔÏó¡£ÔÚJavaÀà¿âÖУ¬IO²¿·ÖµÄÄÚÈÝÊǺÜÅÓ´óµÄ£¬ÒòΪËüÉæ¼°µÄÁìÓòºÜ¹ã·º:±ê×¼ÊäÈëÊä³ö£¬ÎļþµÄ²Ù×÷£¬ÍøÂçÉϵÄÊý¾ÝÁ÷£¬×Ö·û´®Á÷£¬¶ÔÏóÁ÷£¬zipÎļþÁ÷....±¾ÎĵÄÄ¿µÄÊÇΪ´ó¼Ò×öÒ»¸ö¼òÒªµÄ½éÉÜ¡£
¡¡¡¡Á ......

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


À¬»øÊÕ¼¯¼¸ºõÊÇÿ¸ö¿ª·¢ÈËÔ±¶¼Ï²°®µÄÒ»¸ö Java™ Æ½Ì¨ÌØÐÔ£¬Ëü¼ò»¯ÁË¿ª·¢£¬Ïû³ýÁËËùÓÐÖÖÀàµÄDZÔÚ´úÂë´íÎ󡣿ɾ¡¹ÜÀ¬»øÊÕ¼¯Ò»°ãÀ´Ëµ¿ÉÒÔÈÃÄúÎÞÐè½øÐÐ×ÊÔ´¹ÜÀí£¬ÓÐʱºòÄú»¹ÊDZØÐë×Ô¼º½øÐÐһЩÄÚÎñ´¦Àí¡£
ÏÔʽµØÊÍ·Å×ÊÔ´
Java ³ÌÐòÖÐʹÓõľø´ó¶àÊý×ÊÔ´¶¼ÊǶÔÏó£¬À¬»øÊÕ¼¯ÔÚÇåÀí¶ÔÏó·½Ãæ×öµÃºÜºÃ¡£Òò´Ë£¬Äú¿ÉÒÔʹÓÃÈÎ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ