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!