Penggunaan umum kelas Sistem
1. Terutama memperoleh informasi variabel lingkungan sistem
Copy kode kodenya sebagai berikut:
public static void sysProp()melemparkan Pengecualian{
Peta<String,String> env = System.getenv();
//Dapatkan semua variabel lingkungan sistem
for(Nama string : env.keySet()){
System.out.println(nama + " : " +env.get(nama));
}
//Dapatkan nilai variabel lingkungan yang ditentukan pada sistem
Sistem.keluar.println(env.get("JAVA_HOME"));
//Dapatkan semua properti sistem
Properti prop = System.getProperties();
//Simpan properti sistem ke file konfigurasi
prop.store(new FileOutputStream("Prop.properties"),"Properti sistem");
//Menghasilkan properti sistem tertentu
System.out.println(System.getProperty("os.nama"));
}
2. Metode operasi yang berhubungan dengan waktu sistem
Copy kode kodenya sebagai berikut:
public static void sysTime(){
//Dapatkan milidetik waktu saat ini dari sistem currentTimeMillis() (mengembalikan perbedaan waktu antara waktu saat ini dan UTC 1970.1.1 00:00)
Lama = System.currentTimeMillis();
System.out.println(waktu);
Long time1 = System.nanoTime();//Terutama digunakan untuk menghitung perbedaan waktu dalam nanodetik
Lama waktu3 = Sistem.currentTimeMillis();
untuk(Panjang i =0l;i <999l; i++){}
Lama2 = Sistem.nanoTime();
Lama4 = System.currentTimeMillis();
System.out.println(waktu2 - waktu1+ " : " +(waktu4 - waktu3));
}
3. Identifikasi apakah kedua objek tersebut sama di memori heap
Copy kode kodenya sebagai berikut:
public static void identitasHashCode(){
//str1 str2 adalah dua objek String yang berbeda
String str1 = String baru("helloWorld");
String str2 = String baru("helloWorld");
//Karena kelas String menggantikan metode hashCode(), HashCode-nya sama
Sistem.keluar.println(str1.hashCode()+" : "+str2.hashCode());
//Karena keduanya bukan objek yang sama, HashCode yang dihitungnya berbeda.
//Sebenarnya metode ini menggunakan metode perhitungan HashCode yang paling orisinal, yaitu metode perhitungan HashCode dari Object.
System.out.println(System.identityHashCode(str1) + " : "+ System.identityHashCode(str2));
String str3 = "halo";
String str4 = "halo";
//Karena mereka mengacu pada objek yang sama di kumpulan konstan, HashCode mereka juga sama.
System.out.println(System.identityHashCode(str3) + " : "+ System.identityHashCode(str4));
/*Outputnya adalah sebagai berikut
-1554135584 : -1554135584
28705408 : 6182315
21648882 : 21648882
*/
}
Penggunaan umum kelas Runtime
Setiap aplikasi Java memiliki instance kelas Runtime yang memungkinkan aplikasi terhubung ke lingkungan tempat aplikasi dijalankan.
Copy kode kodenya sebagai berikut:
kelas RunTimeTest
{
public static void main(String[] args) memunculkan Pengecualian
{
getJvmInfo();
//ujian eksekutif();
}
kekosongan statis publik getJvmInfo(){
//Dapatkan objek runtime yang terkait dengan runtime Java
Waktu proses rt = Waktu proses.getRuntime();
System.out.println("Jumlah prosesor:" + rt.availableProcessors()+" byte");
System.out.println("Total memori Jvm: "+ rt.totalMemory()+" byte");
System.out.println("Memori bebas Jvm: "+ rt.freeMemory()+" byte");
System.out.println("Jumlah maksimum memori yang tersedia untuk Jvm: "+ rt.maxMemory()+" byte");
}
public static void execTest()melemparkan Pengecualian{
Waktu proses rt = Waktu proses.getRuntime();
//Jalankan perintah string yang ditentukan dalam proses terpisah.
rt.exec("mspaint E://mmm.jpg");
}
}