分享

【答疑释惑第十二讲】什么是函数库?

 戢炧 2016-02-23

2015-12-03 程序员互动联盟


疑惑一
java中如何引入第三方jar包?

方法一、使用Bootstrap Classloader来加载这些类

我们可以在运行时使用如下参数:

-Xbootclasspath:完全取代系统Java classpath.最好不用。

-Xbootclasspath/a: 在系统class加载后加载。一般用这个。

-Xbootclasspath/p: 在系统class加载前加载,注意使用,和系统类冲突就不好了.

方法二、使用Extension Classloader来加载

你可以把需要加载的jar都扔到%JRE_HOME%/lib/ext下面,这个目录下的jar包会在Bootstrap Classloader工作完后由Extension Classloader来加载。

方法三、用AppClassloader来加载,不过不需要classpath参数了

我们在MANIFEST.MF中添加如下代码:

Class-Path: lib/some.jar

方法四、自定义Classloader来加载

上述中任意一种方法我们都可以用来加载引用其他的jar包


疑惑二
什么是函数库?
在我们学习程序语言时间长了,自己会写很多的基础函数,比如排序等等。难道每次我们用到时需要把这些基础函数以源码的形式粘贴到我们的程序里面吗?答案是否定的。以C语言为例,我们可以将这些函数打包成函数库的形式以便我们后续使用。库中存放函数的名称和对应的目标代码,以及连接过程中所需的重定位信息。我们以后可以直接使用。


疑惑三
静态库和动态库在使用的区别?

常用的静态库和动态库什么区别呢?下面为大家介绍一下。

静态连接库就是把文件中用到的函数代码直接链接进目标程序,程序运行的时候不再需要其它的库文件;动态链接就是把调用的函数所在文件模块和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从动态库中寻找相应函数代码,因此需要相应库文件的支持。



联盟推出答疑解惑系列,如果有编程疑惑可按照如下格式:

答疑解惑+个人昵称+具体问题

输入到微信公众号里面,具有代表性的问题,联盟将整理成文章发表

输入sh获取所有的答疑解惑文章,或者点击“阅读原文

输入关键字 投票 有惊喜等你哦

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多