📌  相关文章
📜  Java中的 LogRecord setInstant() 方法及示例

📅  最后修改于: 2022-05-13 01:55:50.614000             🧑  作者: Mango

Java中的 LogRecord setInstant() 方法及示例

Java.lang.reflect.LogRecordsetInstant()方法用于设置事件发生的时刻,这有助于即时记录日志事件。如果给定的瞬间表示时间线上的一个点在未来或过去太远而无法适应长毫秒和纳秒调整,则会引发算术异常。

句法:

public void setInstant(Instant instant)

参数:此方法接受事件发生的瞬间

返回:此方法不返回任何内容

异常:此方法将抛出以下异常:

  • NullPointerException – 如果 Instant 为空。
  • ArithmeticException – 如果在调用 instant.toEpochMilli() 时会发生数字溢出。

下面的程序说明了 setInstant() 方法:
方案一:

// Java program to illustrate
// setInstant() method
  
import java.time.Instant;
import java.util.logging.Level;
import java.util.logging.LogRecord;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // create a Instant object
        Instant instant
            = Instant.parse("2018-12-30T19:34:50.63Z");
  
        // Create LogRecord object
        LogRecord logRecord = new LogRecord(
            Level.parse("800"),
            "Hi Logger");
  
        // set Instant time
        logRecord.setInstant(instant);
        System.out.println(
            "Event Time "
            + logRecord.getInstant()
                  .toString());
    }
}
输出:
Event Time 2018-12-30T19:34:50.630Z

方案二:

// Java program to illustrate
// setInstant() method
  
import java.time.Instant;
import java.util.logging.Level;
import java.util.logging.LogRecord;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // create a Instant object
        Instant instant
            = Instant.now();
  
        // Create LogRecord object
        LogRecord logRecord = new LogRecord(
            Level.parse("800"),
            "GFG Logger");
  
        // set Instant time
        logRecord.setInstant(instant);
  
        System.out.println0(
            "Event Time "
            + logRecord.getInstant()
                  .toString());
    }
}
输出:
Event Time 2019-10-20T19:32:50.818428ZEvent Time 09 Sep 2001 07:16:39:900 +0530

参考资料: https: Java Java.time.Instant)