学习记录5
1、JAR包
-
JAR包定义
JAR 文件就是 Java Archive File,是Java的一种文档格式,类似于ZIP文件。
-
JAR包生成案例
一共准备两个Java工程,一个Java工程来提供JAR包,另一个来使用JAR包。
【File—>New—>Module…】① 提供JAR包的工程,名为Dept.java的文件:
private Integer deptNo;
private String dname;
private String loc;
【Alt+Insert】——>【Getter and Setter】&【Constructor】
② 使用JAR包的工程,名为Test.java的文件。
JAR包创建与传递步骤:
-
【File—>Project Structure—>Artifacts—>点击’+’号,JAR,EMPTY—>'Name:'处自定义名字—>Available Elements处拖拽所需至左侧的.jar包上】
-
【Build—>Build Artifacts…—>弹出菜单中相应名字下—>Action的Build—>生成JAR包文件位置在上一步骤的’Output directory’】
-
【复制JAR包到所需的工程上—>右键Add as library…】
2、接口的作用
-
指定接收的类所需“遵守”的规则
以汽车公司与引擎公司的合作为例。汽车公司(甲方)不生成引擎,需要从引擎公司(乙方)购买。
甲方要求引擎的规格大小和实现基本功能(即指定规则),乙方遵守规则生产引擎,但是不同乙方的实现功能各有特色。
实现步骤:
-
① 创建车工厂Module工程——>创建entity.Car类,设定Car的各种属性——>创建service.Engine接口,即指定所需引擎的规则。
-
② 分别创建跑车、越野的Module工程——>将车工厂的接口直接复制过来——>创建各自的serviceImpl引擎类,引用复制过来的接口,再生产有各自特色的引擎。
-
③ 将跑车、越野工程进行JAR包的生成——>均复制入车工厂工程中——>在车工厂工程中创建测试类,创造一辆实例车。
-
降低Java工程中类文件之间的耦合度,从而降低维护成本
即,将【Engine engine = new SportEngine();】改为【Engine engine = new SuvEngine();】其他均不用修改就能实现维护,使耦合度降低便于更换。