Java反射的简单例子
来源:互联网 发布:抑毛液有用吗 知乎 编辑:程序博客网 时间:2024/06/12 21:01
反射技术: 通过配置文件动态获取类,仅在配置文件中添加类名,而不用修改源码
当程序写好后直接在配置文件里添加新增类名就可以了
public class ReflectTest {public static void main(String[] args) throws Exception {NoteBook nb = new NoteBook();nb.run();// nb.useUSB(new UsbMouse()); // 传统方法// nb.useUSB(new UsbKey());// 1 新建配置文件File config = new File("file\\usb.properties");if (!config.exists())config.createNewFile();// 2 读取配置文件FileReader fr = new FileReader(config);// 获取键值Properties pr = new Properties(); // 属性文件 文件中存储键-值对key=valuepr.load(fr);for (int i = 1; i <= pr.size(); i++) {String name = pr.getProperty("usb" + i);// 反射技术Class c = Class.forName(name); //获取类名USB usb = (USB) c.newInstance(); //创建实例nb.useUSB(usb);// 加载配置文件中的类 传对象给Notebook}fr.close();}}
</pre><pre name="code" class="java">public class NoteBook {public void run() {System.out.println("笔记本电脑开启");}public void useUSB(USB usb) { // 多态if (usb != null) {usb.open();usb.close();}}}
public interface USB {void open();void close();}
public class UsbKey implements USB {public void open() {System.out.println("usb键盘开启");}public void close() {System.out.println("usb键盘关闭");}}
public class UsbMouse implements USB {public void open() {System.out.println("usb鼠标开启");}public void close() {System.out.println("usb鼠标关闭");}}
0 0
- java反射的简单例子
- Java反射的简单例子
- java反射简单例子
- java 反射简单方法的例子
- 反射的简单例子
- java反射机制简单例子
- java反射机制简单例子
- java反射的例子
- java反射的例子
- java一个最简单的反射的例子
- 动态调用一个类的简单例子(java反射)
- java泛型和反射的简单例子
- 简单java反射,小例子,仅供参考
- java反射的小例子
- Java反射机制的例子
- 非常好的Java反射例子
- java反射机制的例子
- 非常好的Java反射例子
- [线上问题] Nginx与Tomcat、Client之间请求的长连接配置不一致问题分析解决
- Elasticsearch搜索引擎学习记录1-安装
- gulp教程之gulp中文API
- C语言实现Windows7下的文件清单生成器
- RHEL Linux安装Clang试用
- Java反射的简单例子
- linux内核版本本地版本号的检查
- 低版本物理机部署 高版本OVF 报“硬件系列vmx 12不受支持“解决办法
- img文件挂载
- 例题4-6 师兄帮帮忙 UVa12412
- 【容器技术】使用docker搭建开发环境
- spring-security中的csrf防御机制
- Maven生命周期以及Maven插件知识点
- some courses of ZHONGKEYUAN