加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java – 从Jar文件创建一个类

发布时间:2020-12-14 19:20:21 所属栏目:Java 来源:网络整理
导读:是否可以从jar文件加载一个类,然后从中创建一个对象? 注意:程序编译时,jar文件不存在,但稍后由用户添加,并在用户启动程序时加载. 我的代码喜欢这样:用户有一个jar文件,其中只有一个编译过的java类.然后,用户将此jar文件放在一个目录中,并启动我的程序,该

是否可以从jar文件加载一个类,然后从中创建一个对象?

注意:程序编译时,jar文件不存在,但稍后由用户添加,并在用户启动程序时加载.

我的代码喜欢这样:用户有一个jar文件,其中只有一个编译过的java类.然后,用户将此jar文件放在一个目录中,并启动我的程序,该程序查看目录并找到此jar文件.然后它加载这个jar文件并从中创建一个类,然后由它创建一个对象并将其添加到数组中.

除了从jar文件创建一个类(作为java.io文件加载)然后从该类创建和对象之外,我已经完成了所有工作.

有帮助吗?谢谢.

最佳答案
您正在寻找Class#forNameClass#newInstance方法.

This link提供了一个关于初始化一个知道其名称(从链接中提取)的类的好例子:

Class c = Class.forName("com.xyzws.AClass");
AClass a = (AClass)c.newInstance();

这些情况的一个很好的例子是使用JDBC(如链接所指出的那样),因为您初始化了要连接的db引擎驱动程序的对象.请记住,这个驱动程序来自一个导入的jar进入你的项目,它可能是MySQL,Oracle或MSSQL Server的jar,你只需提供驱动程序类名,让JDBC API和jar处理SQL工作.

Class.forName("org.gjt.mm.mysql.Driver");
Connection con = DriverManager.getConnection(url,"myLogin","myPassword");

另外,对于动态加载jar的这个特定问题,有问题和答案:

> How should I load Jars dynamically at runtime?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读