今天由于要用到通過一個字符串取得Class,開始通過Class的forName(String)方法可以得到,但是當我輸入的是一個數組的時候,好像就不行了,通過forName(String)取得的卻是空的,按照原來的思路好像是可以的,因為數組也是一個對象,也就是說可以getClass,為什么卻不能得到,比較傷腦子,后來通過一個不是辦法的辦法解決了,呵呵,僅供參考。
1
2
//
.
3
4
public static Class findClass(String r_className,ClassLoader r_loader)
{
5
String t_className = new String(r_className);
6
int arryIndex = t_className.lastIndexOf("[]");
7
boolean isarryClass = false;
8
if(arryIndex > 0)
{
9
t_className = t_className.substring(0,arryIndex);
10
isarryClass = true;
11
}
12
Class claz = null;
13
try
{
14
claz = Class.forName(t_className,true,r_loader);
15
} catch (ClassNotFoundException e)
{}
16
if(isarryClass && claz != null)
{
17
claz = Array.newInstance(claz, 1).getClass();
18
}
19
return claz;
20
}
21
//
.
現在還沒有發現不能處理的情況。

2


3

4



5

6

7

8



9

10

11

12

13



14

15



16



17

18

19

20

21

