Tanpa basa-basi lagi, mari langsung ke kodenya.
Copy kode kodenya sebagai berikut:
impor java.teks.SimpleDateFormat;
import java.util.Date;
/**
* Implementasi Java mirip dengan __FILE__, __FUNC__, __LINE__, dll. di C/C++, yang terutama digunakan untuk logging dan fungsi lainnya.
*
* @versi 1.0
*
*/
kelas abstrak publik CommonFunction {
/**
* Saat mencetak log, dapatkan nama file program saat ini, nomor baris, dan nama metode. Format outputnya adalah: [FileName |.LineNumber |.
*
* @kembali
*/
String statis publik getFileLineMethod() {
StackTraceElement traceElement = ((Pengecualian baru()).getStackTrace())[1];
StringBuffer toStringBuffer = new StringBuffer("[").append(
traceElement.getFileName()).append(" | ").append(
traceElement.getLineNumber()).append(" | ").append(
traceElement.getMethodName()).append("]");
kembali keStringBuffer.toString();
}
//Nama file saat ini
String statis publik _FILE_() {
StackTraceElement traceElement = ((Pengecualian baru()).getStackTrace())[1];
kembalikan traceElement.getFileName();
}
//Nama metode saat ini
String statis publik _FUNC_() {
StackTraceElement traceElement = ((Pengecualian baru()).getStackTrace())[1];
kembalikan traceElement.getMethodName();
}
//Nomor baris saat ini
int statis publik _LINE_() {
StackTraceElement traceElement = ((Pengecualian baru()).getStackTrace())[1];
kembalikan traceElement.getLineNumber();
}
// waktu saat ini
String statis publik _TIME_() {
Tanggal sekarang = Tanggal baru();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
return sdf.format(sekarang);
}
}