为什么实例化新的FileHandler在我的java程序中不起作用?

时间:2017-11-16 23:27:35

标签: java java.util.logging

我尝试使用java.util.logging创建自己的日志记录类。此类的一部分允许调用者使用FileHandler类指定日志文件。但是,我似乎无法获得我的一种创建新FileHandler对象的方法。这基本上就是我所拥有的:

import java.util.logging.Level; import java.util.logging.Logger; import java.util.logging.FileHandler;

public class myLogger {
  private FileHandler logFileHdl = null; 

  ...
  public void setLogFilename(String filename) {
     this.logFileHdl = new FileHandler(filename)
     ...
  }

当我运行时,我得到:" java:未报告的异常java.io.IOException"。

如果我摆脱setLogFilename方法并且在声明logFileHdl属性时尝试创建新的FileHandler对象,我也会得到同样的错误:

import java.util.logging.Level; import java.util.logging.Logger; import java.util.logging.FileHandler;

public class myLogger {
  private FileHandler logFileHdl = new FileHandler(); 

我不确定原因。

1 个答案:

答案 0 :(得分:0)

好的,所以问题是因为我是一名Java新手。显然因为FileHandler构造函数可以抛出IOException,我被迫处理异常(或声明我的类可以抛出异常。)我没有意识到是这种情况。所以,如果我添加一个" try / catch"对于IOException,错误就会消失。