Rumah >Java >javaTutorial >Bagaimanakah Program Java Dapat Menentukan Bitness JVMnya (32-bit atau 64-bit)?

Bagaimanakah Program Java Dapat Menentukan Bitness JVMnya (32-bit atau 64-bit)?

Barbara Streisand
Barbara Streisandasal
2024-12-20 05:34:16749semak imbas

How Can a Java Program Determine its JVM's Bitness (32-bit or 64-bit)?

Mengesan JVM Bitness Dalam Program

Soalan:

Bagaimanakah program Java boleh menentukan sama ada ia berjalan dalam Mesin Maya Java 64-bit atau 32-bit (JVM)?

Jawapan:

Walaupun versi Java tertentu menyediakan bendera untuk tujuan ini, versi moden telah menafikan atau mengalih keluarnya. Walau bagaimanapun, terdapat kaedah alternatif untuk mengesan bitness JVM dari dalam program.

Penyelesaian (Menggunakan Sifat Sistem):

String javaVersion = System.getProperty("java.version");
if (javaVersion.contains("64-Bit")) {
    // Running in a 64-bit JVM
} else {
    // Running in a 32-bit JVM
}

Penyelesaian (Menggunakan Refleksi ):

try {
    Class<?> runtimeClass = Class.forName("java.lang.Runtime");
    Field dataModelField = runtimeClass.getDeclaredField("dataModel");
    dataModelField.setAccessible(true);
    String dataModel = (String) dataModelField.get(null);
    if (dataModel.equals("64-bit")) {
        // Running in a 64-bit JVM
    } else {
        // Running in a 32-bit JVM
    }
} catch (Exception e) {
    // Handle exceptions gracefully
}

Atas ialah kandungan terperinci Bagaimanakah Program Java Dapat Menentukan Bitness JVMnya (32-bit atau 64-bit)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn