Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 得到一个虚拟的slf4j记录器?_Java_Slf4j_Null Object Pattern - Fatal编程技术网

Java 得到一个虚拟的slf4j记录器?

Java 得到一个虚拟的slf4j记录器?,java,slf4j,null-object-pattern,Java,Slf4j,Null Object Pattern,我可以从slf4j获得虚拟记录器吗?(想想空对象设计模式。)如果是这样,有人能举个例子吗?或者,如果我想这样做,我必须实现一个自定义记录器吗 我希望写一个函数,沿着 private Logger logger; static Logger nullLogger; static { nullLogger = getMeADummyLogger(); } public Logger getLogger() { return this.logger == null ? nullLo

我可以从slf4j获得虚拟记录器吗?(想想空对象设计模式。)如果是这样,有人能举个例子吗?或者,如果我想这样做,我必须实现一个自定义记录器吗

我希望写一个函数,沿着

private Logger logger;
static Logger nullLogger;

static {
    nullLogger = getMeADummyLogger();
}

public Logger getLogger() {
    return this.logger == null ? nullLogger : this.logger;
}

// then, elsewhere:
this.getLogger().info("something just happened");
如果没有设置记录器,则不要在最后一行获取
NullPointerException

使用:

return this.logger == null ? NOPLogger.NOP_LOGGER : this.logger;