博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java实现反射,动态配置
阅读量:6145 次
发布时间:2019-06-21

本文共 1805 字,大约阅读时间需要 6 分钟。

  hot3.png

//java 实现反射//首先定义一个接口Ishow.javapublic interface Ishow(){    void show(String str);}//建立一个demo.java文件实现接口public class demo implements Ishow{    public void show(String str){        Ssytem.out.println(str);    }}//建立test.java文件来测试public class test{public static void main(String args[]){    String str ="p1.demo";  //包名+反射的类名    try(){    Class c1 =Class.forname(str);    try(){        Ishow a =(Ishow)c1.newInstance();    //    类加载机制        a.show("qq");    }catch(InstantiationException e){        e.printStackTrace();    }catch(IllegalAccessException e){        e.printStackTrace();    }catch(ClassNotFoundException e){         e.printStackTrace();            }        }    }}//java实现动态配置 实现反射//Ishow 和demo 不变public interface Ishow(){    void show(String str);}public class demo implements Ishow{    public void show(String str){        Ssytem.out.println(str);    }}建立PropertiesUtil.javaimport java.util.Properties;public class PropertiesUtil{    Properties p = new Properties();  //new 一个properties对象    try(){        p.load(PropertiesUtil.class.getResourceAsStream("show.properties"));加载show.properties    }catch(IOException e){    	e.printStackTrace();    }    return p;}//建立 show.properties文件show=p1.demo//建立test.java文件来测试public class test{public static void main(String args[]){//此处的包+类名是通过动态文件show.properties来加载的   Properties p =Properties.getShowProperties();   String str = p.getProperty("show");    try(){    Class c1 =Class.forname(str);    try(){        Ishow a =(Ishow)c1.newInstance();    //    类加载机制        a.show("qq");    }catch(InstantiationException e){        e.printStackTrace();    }catch(IllegalAccessException e){        e.printStackTrace();    }catch(ClassNotFoundException e){         e.printStackTrace();            }        }    }}

 

 

转载于:https://my.oschina.net/kakoi/blog/519142

你可能感兴趣的文章
Spring Boot笔记
查看>>
JAVA开发者学习必备的十大网站
查看>>
shell脚本:自动搭建yum(升级版)
查看>>
Oracle 11g RAC搭建(VMware环境)UDEV(三)
查看>>
使用Laya引擎开发微信小游戏(下)
查看>>
服务器启动mysql
查看>>
JDBC操作mysql数据库
查看>>
Windows常用运行库下载 (DirectX、VC++、.Net Framework等)
查看>>
Linux防火墙系统
查看>>
网络文件共享服务-NFS
查看>>
JAVA端实现支付宝充值
查看>>
Hadoop2.6-CDH5.7部署安装
查看>>
物联网现状及落地难点
查看>>
Java数据结构和算法(七)——链表
查看>>
C程序--猜数字游戏
查看>>
网站流量分析资源
查看>>
ASP.NET获取客户端IP地址
查看>>
Web服务器Nginx多方位优化策略
查看>>
在windows 7中设置指定帐户可以登入系统的时间,实现家长控制
查看>>
数据触动了电商最敏感的神经
查看>>