Java中的log和system兩者的主要功能都是用于程序的輸出,但是它們的使用場景和輸出的方式卻存在著很大的不同。
import java.util.logging.Logger;
public class LogExample {
private static final Logger LOGGER = Logger.getLogger(LogExample.class.getName());
public static void main(String[] args) {
LOGGER.info("This is an info log message");
LOGGER.warning("This is a warning log message");
}
}
Log是一個庫,而System是一個類,它們提供了不同的輸出方式以及輸出內容的級別控制。
Log使用了不同的log級別來分類不同的信息,從低到高的級別分別是FINEST、FINER、FINE、CONFIG、INFO、WARNING、SEVERE,用戶可以根據需要選擇輸出對應級別的信息。
而System則提供了三個靜態成員變量out、in和err。其中,out是用于輸出普通信息,in用于讀取輸入內容,err用于輸出錯誤信息。
public class SystemExample {
public static void main(String[] args) {
System.out.println("This is a normal out message");
System.err.println("This is an error message");
}
}
需要注意的是,Log可以輸出更詳細的信息,包括線程和調用棧,對于程序的debug和問題排查起到了很大的幫助,而System只能簡單地輸出對應的信息。
因此,通過合理地使用Log和System,我們可以更好地控制程序的輸出信息和級別,并對程序的調試和問題排查提供更好的支持。