为什么异常被捕获 3 次?
Why exception is caught 3 times?
我正在捕获 FileNotFoundException
并通过 log4j2 将其记录到文件中。日志语句被调用三次。我用 sysout 语句替换了 log 语句,以检查这是否打印了 3 次消息。它确实打印到控制台 3 次。为什么sysout语句或log语句被调用了3次?
下面是代码片段。
prop = new Properties();
String path ="invalid path";
try {
FileInputStream fis = new FileInputStream(path);
} catch (FileNotFoundException e) {
log.error("FileInputStream exception");
System.out.println("Exception");
}
这个问题不应该放在第一位。问题根源是3class继承了一个Baseclass,Baseclass构造函数中的一个方法被调用了三次。移出这个“init”方法解决了这个问题。
我正在捕获 FileNotFoundException
并通过 log4j2 将其记录到文件中。日志语句被调用三次。我用 sysout 语句替换了 log 语句,以检查这是否打印了 3 次消息。它确实打印到控制台 3 次。为什么sysout语句或log语句被调用了3次?
下面是代码片段。
prop = new Properties();
String path ="invalid path";
try {
FileInputStream fis = new FileInputStream(path);
} catch (FileNotFoundException e) {
log.error("FileInputStream exception");
System.out.println("Exception");
}
这个问题不应该放在第一位。问题根源是3class继承了一个Baseclass,Baseclass构造函数中的一个方法被调用了三次。移出这个“init”方法解决了这个问题。