2016-11-17 73 views
1

我們在cmd中使用Java,同樣的方法尋找安裝的Java運行Java程序,我們使用Java的版本在cmd中,那麼它是怎樣爲我們提供了版本的詳細信息?有沒有在Java API定義的任何版本的類?它看起來好笑的問題,雖然Java -Version?它是如何給出安裝java版的細節

+4

不,它不是的API中。它只是在編譯時將值打印到'java'二進制文件中。 –

+1

相關:[在運行時獲取Java版本](http://stackoverflow.com/q/2591083/3788176)。 –

+0

看到這個答案:http://stackoverflow.com/a/13851817/4491066 – Adam

回答

5

使用

System.getProperty("java.vendor") 
System.getProperty("java.version") 
System.getProperty("java.vm.vendor") 
System.getProperty("java.vm.name") 
System.getProperty("java.vm.version") 
System.getProperty("os.name") 
System.getProperty("os.version") 
System.getProperty("os.arch") 

併爲獲取默認的字符編碼

new java.io.OutputStreamWriter(new java.io.ByteArrayOutputStream()).getEncoding() 
+1

即使是默認的字符編碼可以從標準的系統屬性「file.encoding的」來了。 –

0

的Java存儲版本爲java.exe。如果你想自己嘗試,只需在任何文本編輯器或十六進制編輯器中打開java.exe,你就會發現它裏面寫的版本。