CSDN博客

img nzh_csdn

reflection的应用

发表于2004/10/31 7:53:00  937人阅读

分类: Java

通过下面这个实例,可以了解reflection的使用。

数组的扩展

写一个方法返回一个长度是输入的数组长度的两倍的数组,内容要复制,要求输入和输出的参数都是Object类型。
这里可能用Java的反射(reflection)API来实现,具体点就是Array类。

    public Object expand(Object array){

        if (!array.getClass().isArray())
            return null;

        Class componentType = array.getClass().getComponentType();
        int newLength = Array.getLength(array)*2;

        Object newArray = Array.newInstance(componentType, newLength);
        System.arraycopy(array, 0, newArray, 0, Array.getLength(array));
        //System.arraycopy(array, 0, newArray, Array.getLength(array), Array.getLength(array));

        return newArray;
    }

其实,也只是几个简单的方法,不难。当然是在知道这些方法的前提下不
难。但也正是这一个个简单的东西的累加,形成了差距。要走的路还长……
阅读全文
0 0

相关文章推荐

img
取 消
img