博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于包和模块
阅读量:4127 次
发布时间:2019-05-25

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

 

理解包和模块我们可以从两个层面上来进行理解,一个实现层面上的,另外一个是概念层次上的。拿java.util来说,我们既可以在概念上认为它是一个包,因为它表征了一些实用类的集合,我们也可以在实现层面上认为它是一个模块,因为java.util.jar可作为一个独立的单元进行部署。很显然,我们不可能同时在两个层面上来区分包和模块,我们在区分这两个概念的时候只能忠实于一个层次,这篇文章只在概念层次上对这两个概念进行区分。

   我们通常把认为是一个软件实体的集合,而这个集合是有现实的意义的,也就是说它具有概念完整性。而模块和包是不一样的,虽然我们也可以认为它是某些软件实体(如类、数据等)的集合,但是它的概念不在于分类和组织,而在于提供一个聚集的功能的集合。我们可以认为一个接口术语一个包,但是我们不能认为一个接口术语一个模块,因为接口就其本质上来说是模块之间的契约,因而是独立于模块的。虽然在实现上,我们常常把接口当作了接口了一个部分,但从概念上来说,他们是独立的。

转载地址:http://qthpi.baihongyu.com/

你可能感兴趣的文章
linux 勿删 libc.so.6 恢复操作
查看>>
QT moveToThread 实现多线程记录
查看>>
linux fg、bg的区别
查看>>
QT 获取可执行程序的路径
查看>>
QT QTextStream 读文件
查看>>
linux mysql安装 远程连接 字符集设置 读写速度问题 基础问题
查看>>
Java中关键字的使用
查看>>
面向对象的三大特征
查看>>
Java中的向下与向上转型
查看>>
== 和 equals() 区别
查看>>
基本类型、包装类与String类间的转换
查看>>
解决“cvShowImage”和“cv2”问题
查看>>
Ubuntu18.04安装labelme及使用
查看>>
Ubuntu18.04安装Docker
查看>>
解决“pip找不到命令“问题
查看>>
Ubuntu18.04安装FFMPEG及简单使用
查看>>
Ubuntu双击运行.sh文件
查看>>
解决“ValueError: not enough values to unpack (expected 3, got 2)”问题
查看>>
Ubuntu18.04安装Tensorflow(GPU)及Keras
查看>>
解决“AttributeError: module 'tensorflow' has no attribute 'Session'”问题
查看>>