📜  Java中的 Logger log() 方法及示例(1)

📅  最后修改于: 2023-12-03 14:42:49.366000             🧑  作者: Mango

Java中的 Logger log() 方法及示例

在Java中,使用日志记录程序运行状态和异常信息是一种良好的编程习惯。Logger是Java日志API中的一个重要组件,用于记录日志信息。

Logger

Logger是Java.util.logging包中的一个类,它用来记录应用程序的事件。

Logger提供了不同的日志级别:SEVERE、WARNING、INFO、CONFIG、FINE、FINER和FINEST。Logger可以将每个日志记录定向到一个或多个Handler,Handler可以将日志记录写入文件,控制台或其他输出位置。

Logger类定义了以下方法:

| 方法名 | 描述 | | --- | --- | | public void severe(String msg) | 记录SEVERE级别的日志。 | | public void warning(String msg) | 记录WARNING级别的日志。 | | public void info(String msg) | 记录INFO级别的日志。 | | public void config(String msg) | 记录CONFIG级别的日志。 | | public void fine(String msg) | 记录FINE级别的日志。 | | public void finer(String msg) | 记录FINER级别的日志。 | | public void finest(String msg) | 记录FINEST级别的日志。 | | public void log(Level level, String msg) | 记录指定级别的日志。 | | public void log(Level level, String msg, Throwable thrown) | 记录指定级别的日志和异常信息。 |

Logger示例

以下示例演示如何在Java程序中使用Logger。

import java.util.logging.Logger;

public class LoggingExample {
    private static final Logger logger = Logger.getLogger(LoggingExample.class.getName());

    public static void main(String[] args) {
        logger.severe("This is a severe message.");
        logger.warning("This is a warning message.");
        logger.info("This is an informational message.");
        logger.config("This is a config message.");
        logger.fine("This is a fine message.");
        logger.finer("This is a finer message.");
        logger.finest("This is a finest message.");

        try {
            throw new NullPointerException("NullPointerException occurred.");
        } catch (NullPointerException ex) {
            logger.log(java.util.logging.Level.SEVERE, "Exception occurred: " + ex.getMessage(), ex);
        }
    }
}

在上述示例中,Logger实例被创建并命名为LoggingExample.class.getName()。Logger记录7种不同级别的日志消息,分别是SEVERE、WARNING、INFO、CONFIG、FINE、FINER和FINEST。在try-catch块中,我们创建了一个异常并记录了相应的日志消息,这里使用了log(Level level, String msg, Throwable thrown)方法。

总结

Logger是Java中记录应用程序事件的重要组件,它提供了不同的日志级别和Handler,可以将每个日志记录定向到一个或多个输出位置。在编写Java程序时,应该始终使用Logger记录程序的运行状态和异常信息,这是一种良好的编程习惯。