#2019.9.25#筆記

1.什麼是java虛擬機?爲什麼說java是跨平臺的語言?

jvm即java虛擬機是一個可以執行java字節碼的虛擬機進程。java源代碼編譯後的.class字節碼文件能夠在不同的jvm上被解釋成爲相應的機器碼,得以在不同平臺上執行。在不同的平臺上安裝相應的jvm,才能實現java的跨平臺。

2.jre和jdk的區別?

Java運行時環境(JRE java runtime environment)。它包括Java虛擬機、Java核心類庫和支持文件。它不包含開發工具(JDK)--編譯器、調試器和其他工具。

Java開發工具包(JDK java deployment kit)是完整的Java軟件開發包,包含了JRE,編譯器和其他的工具(比如:JavaDoc,Java調試器),可以讓開發者開發、編譯、執行Java應用程序。

3.”static”關鍵字是什麼意思?Java中是否可以覆蓋(override)一個private或者是static的方法?

static是靜態的意思,就是說被static修飾的成員變量或者成員方法等在類加載時就加載了,因此可以直接通過類名調用靜態的方法或者變量,而不需要實例化對象。覆蓋方法是指子類繼承父類時,擁有與父類同名,參數及返回值都相同,但是如果是父類中private方法,子類根本就無法調用,就談不上覆蓋。static方法不需要重寫。

4.是否可以在static環境中訪問非static變量?

不可以。因爲在static環境中可以不創建對象的實例,而非static變量在對象未初始化時是不存在的,這樣運行時只執行靜態環境中的代碼時編譯器就會報錯。

5.什麼是自動拆裝箱?

自動裝箱就是Java編譯器將基本數據類型轉化爲對應的對象包裝類型;自動拆箱反之。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章