您的位置:首页 > 其它

反射在框架开发中的应用

2011-05-23 01:10 225 查看
框架就是有很多牛人在我们还在上小学的时候(不懂程序的时候)给我们做了一套开发的架子,以后我们在应用开发时。就可以直接用这套架子,只需要把我们自己的一点东西加进来就可以了。

就好比房子,开发商为我们提供了毛坯房。每个人可以通过自己的喜好来给这套房装修。比如装门窗等。那么毛坯房就是框架,门窗就是自己开发的类。而我们可能还想给门装上一把锁。而这把锁是我们从别人那里买来的。这锁就相当于工具类

毛坯房----->框架

门窗--------->自己开发的类

锁----------->工具类

下面做一个反射应用在框架开发上的例子

定义一个资源文件

ClassName=java.util.ArrayList注意不要加引号,如果加引号了。就会发出找不到类的错误

下面就是通过从资源文件中获得要操作的类名,通过类名反射到那个类的本身,进而使用那个类

package cn.yangtao.reflect;

import java.io.FileInputStream;

import java.io.InputStream;

import java.lang.reflect.*;

import java.util.Collection;

import java.util.HashSet;

import java.util.Properties;

import java.util.Set;

import java.util.*;

public class ColectionReflect {

/**

* @param args

*/

public static void main(String[] args)throws Exception {

// TODO Auto-generated method stub

InputStream in=new FileInputStream("className.properties");

Properties properties=new Properties();

properties.load(in);

in.close();

String ClassName=properties.getProperty("ClassName");

Collection allSet=(Collection)Class.forName(ClassName).newInstance();

//Set allSet=new HashSet();

ReflectPoint r1=new ReflectPoint(1,3);

ReflectPoint r2=new ReflectPoint(3,2);

ReflectPoint r3=new ReflectPoint(1,4);

ReflectPoint r4=new ReflectPoint(1,3);

allSet.add(r1);

allSet.add(r2);

allSet.add(r3);

// r1.setX(3);

// allSet.remove(r1);

System.out.println(allSet.size());

}

}

老婆要求加的链接>>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: