断言和日志

五.断言

1.断言(Assertion)是一种程序调试方式

--使用assert关键字

--断言条件预期为true

--如果断言失败,抛出AssertionError

--可选断言消息,断言失败时可以抛出。

断言的特点:

--不能用于可恢复的程序错误,可恢复的程序应该抛出异常

--只应该用于开发和测试阶段。

启用断言:

jvm默然关闭断言指令

给类启用断言 -ea:com.feiyangedu.sample.Main

可以指定特定的包启用断言-ea:com.feiyangedu...

 

 

六.日志

1.什么是日志

--为了取代System.out.println()

--可以设置输出样式

--可以设置输出级别,禁止某些级别输出

--可以被重定向到文件

--可以按包名控制日志级别

 

2.jdk logging定义了7个日志级别

--SEVERE

--WARNING

--INFO(默认)

--CONFIG

--FINE

--FINER

--FINEST

指定哪个级别就可以用该级别和以上级别。

3.jdk logging的局限:

--jvm启动时读取配置文件并完成初始化

--jvm启动后无法修改配置

--需要在JVN启动时传递参数

-Djava.util.logging.config.file = config-file-name

 

六.commons logging

commons logging

--可以挂接不同的日志系统

--可以通过配置文件指定挂接的日志系统

--自动搜索并使用Log4j

--使用JDK Logging(JDK >=1.4)

基本用法:

public class main{

public static void main(String[] args){

Log log = LogFactory.getLog(Main.class);

log.info("ddd");

log.warn("end.");

}

}

6个日志级别:

FATAL

ERROR

WARNING

INFO

DEBUG

TRACE

在静态方法中引用Log:

public class Main{

static final Log log = LogFactory.getLog(Main.class);

}

在实例方法中

public class Person{

final Log log = LogFactory.getLog(getClass());

}

在父类中实例化Log

public abstract class Base{

protected final Log log = LogFactory.getLog(getClass());

}

 

七.log4j

通过Commons Logging实现日志,不需要修改diamante即可使用Log4j

使用Log4j只需要把log4j2.xml和相关jar放入classpath

如果要更换Log4j,只需要移除log4j2.xml和相关jar

只有扩展Log4j,才需要引用Log4j的接口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值