java 使用反射,动态扩展程序

用意:java 可以通过类加载器、反射机制动态的加载类。 那么可以给正在运行的java程序进行扩展么?比如 我新写一个java类,在其它地方编译好, 把这个class文件丢到一个正在运行的java程序里, 这个正在运行的java程序可以动态的调用这个新增加的class么?


接口:

<script src="https://code.csdn.net/snippets/1609588.js"></script>


主程序调用实例:

<script src="https://code.csdn.net/snippets/1609586.js"></script>

注意,在这个段代码运行时, 拓展类1 和 拓展类2 还不存在,在运行的过程中 , 把 拓展类1 和 拓展类2的class 文件放到相应的位置, 此时你就可以从控制台输入string 然后调用这两个新增加的类了。而在实际应用中,  你可以把这些信息存到数据库中, 实现真正的应用运行的过程中扩展应用。


拓展类1:

<script src="https://code.csdn.net/snippets/1609593.js"></script>


拓展类2:

<script src="https://code.csdn.net/snippets/1609595.js"></script>


实际的软件开发中应该有运用这个技术,比如软件的升级,其在升级后一般需要重启应用,但我猜测从应用的v1版 -》升级的过程 -》 重启应用 -》 v2版  这整个升级的过程中程序应该就是不间断的。


ps: 感谢 lisp 让我对程序和数据有了更深的认识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值