Java中级基础加强(一):命名规范\jar\单元测试\配置文件


基本命名规范

命名的规范(见名知意)

1>包/模块/组件:包域名写前面,全部用小写;

2>方法/字段/变量:首字母小写,多个单词组合使用驼峰表示法

3>类:首字母大写,多个单词组合使用驼峰表示法

4>常量:全部大写字母组成(一般取英文首大写字母),多个单词使用下划线分割,适用于public static final修饰的常量

5>接口:以i的大写字母开头,多个单词组合使用驼峰表示法

6>接口实现类:以Ipml结尾,首字母大写,以接口的名称为参照,去掉前面的字母I

程序设计原则:

1>可拓展性

2>可维护性

3>可重复性

jar包

什么是jar包?

因为编写程序工具导入了JDK,我们可以使用API里面的一些内置工具类,jar就是我们写好的工具类,当别人想用只需要导入我们写好的jar就可以直接使用了.

jar包的生成和导入(IDEA)

1>编写工具类(单例)和工具方法
2>点击File > Project Structure > add jar > From… >只改from librectories 那里,选第二个copy to the …
3>添加完还要在Buid那里buid一下,选Build Artifacts…
4>想在另外的项目用的时候,在项目目录下创建文件包,复制粘贴到文件包中,再右击文件包选Add as Library

单元测试Test(IDEA)

为什么要单元测试

程序写的得不得行不是说得算,是测出来的;程序运行测试需要靠main方法入口,单元测试就摆脱这个束缚啦.但进行单元测试之前需要导入回归测试框架(Junit)

测试方法

在项目下创建一个Test文件包,然后把它变成测试包,然后在里面创建测试类编写测试方法,在测试方法上加@Test就可以测试了,也可以在其他类中选中要测试的类名 Alt + Enter-> Create Test直接选要测试的方法一键生成,但测试编写方法有要求:
在这里插入图片描述
1>方法必须要public修饰(给jvm访问用的);
2>测试方法返回值必须用void(有返回值也没用);
3>不能传参数(方法自身运转不能传参数,这里要区别一下外部调用)

配置文件

先了解硬编码:写代码中的需要经常修改的代码内容,这个代码就称为硬编码;

硬编码存在的隐患:让程序维护成本变高;

解决方案:使用配置文件(单独写一个文档记下需要经常修改的代码内容);分Properties和XML

配置文件也需要在项目目录下建个directory,然后变成资源文件根目录(方便编译成字节码文件时它也被带进去给类加载器方法用)在这里插入图片描述

properties

在资源根文件夹建个以.properties为后缀的文档,在里面一key=value的形式编写,注意不能有空格出现;文件后缀不能写错;为避免配置文件路径写死,使用相对于字节码输出路径(通过类的加载器去获取字节码输出路径下的文件);
操作有两种思路:
1>创建File,再用preperties的对象去load加载这个file,load后没有返回值是因为存储到properties的对象中了,再通过properties的对象去getcontextproperty(key)获取对应的value值(这里使用了绝对路径,在开发中绝对不能使用.要使用相对于字节码输出路径.)

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Properties;

public class PropertiesDemo {
    public static void main(String[] args) throws Exception {
        InputStream fileInputStream = new FileInputStream("F:\\ClassInformation\\java\\mid\\mid\\basicsOfStrong_day01\\properties\\resource\\db.properties");
        Properties properties = new Properties();
        properties.load(fileInputStream);
        String name = properties.getProperty("name");
        String id = properties.getProperty("id");
        System.out.println("name = " + name);
        System.out.println("id = " + id);


    }
}

2>通过Tread.currentThread.getContextClassloader获取类加载器,通过类加载器.getResourceasStream加载到输入流中,再用properties对象load加载获取对应值(相对于字节码输出路径),tip:没有效果就把out目录删了再运行

import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Properties;

public class PropertiesDemo_2 {
    public static void main(String[] args) throws Exception {
        ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
        InputStream fileInputStream = classLoader.getResourceAsStream("db.properties");
        Properties properties = new Properties();
        properties.load(fileInputStream);
        String name = properties.getProperty("name");
        String id = properties.getProperty("id");
        System.out.println("name = " + name);
        System.out.println("id = " + id);
    }
}

XML

XML文件就是以.xml结尾的文件,xml结构语法省略,它加载到内存中的各个组成部分是以一个个对象的形式加载的,分XML文件,标签/元素,属性,文本,由结构分析可以发现需要获取底层文本信息(解析XML文件)都需要寻回到XML文件Document这个对象(即下层需要上层对象get获取),操作思路也是这样
获取Document对象:
1>通过DocumentBuiderFactory的newInstance方法获取本身的对象
2>再通过DocumentBuiderFactory的对象newDocumnentBuider去获取DocumentBuider对象
3>再由DocumentBuider的对象parse解析File文件获取Document对象;

XML约束:这个是为了不让XML文件不乱写,双方约好的约束(相当于XML文件的格式框架);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值