java面試題(楊曉峰)---談談你對java平台的理解

來源:互聯網
上載者:User

標籤:ade   介紹   類載入機制   是什麼   垃圾收集器   模組   java面試題   解釋執行   監控   

從你接觸java開發到現在,你對java最直觀的印象是什麼呢?是他宣傳的"write once ,run anywhere"還是目前看已經有些形式主義的文法呢?你對於java平台到底瞭解到什麼程度?請先停下來總結思考一下.

今天我要問你的問題是,談談你對java平台的理解?"java是解釋執行"這句話正確嗎?

典型回答.

java本身是一種物件導向的語言,最顯著地特徵有兩個方面,一是所謂的"書寫一次,到處運行.write once,run anywhere"能夠非常容易的獲得跨平台能力,另外就是記憶體回收,java通過記憶體回收行程,回收分配記憶體,大部分情況下,程式員不需要自己操心記憶體的分配和回收.我們日常會接觸到JRE或者JDK,jre就是java的運行環境,包括:jvm和java類庫,以及一些模組等.jdk可以看做jre的一個超集,提供更多工具,如:編譯器,各種診斷工具.

對於"java是解釋執行"這句話並不準確,我們開發的java原始碼,首先通過javac編譯成位元組碼,然後運行時,通過java虛擬機器(JVM)內嵌的解譯器將位元組碼轉換成為最終的機器碼,但是常見的jvm,比如我們大多數情況下使用的oracleJDK提供的hotspot jvm,都提供了jit編譯器,就是通常所說的動態編譯器,jit能夠在運行時將熱點代碼編譯成機器碼,這種情況下部分熱點代碼就屬於編譯執行,而不是解釋執行.

考點分析;

其實這個問題,問的有點籠統.題目本身是非常開放的,往往考察的是多個方面,比如,基礎知識理解是否清晰,是否掌握java平台主要模組和運行原理,很多面試者會在這種問題上吃虧,稍微緊張一下,就不知從何說起.

對於這類籠統的問題,你需要盡量表現出自己的思維深度和系統化理解,java知識理解也要全面.避免讓面試官覺得是"知其然而不知其所",畢竟明白基本組成和機制,是日常工作中進行問題診斷或者效能調優等多方面事情的基礎,相信沒人會不喜歡"熱愛學習和思考"的面試者.

即使覺得自己的回答不是非常完善,也不用擔心,我個人覺得這種籠統的問題,回答的片面寫也是正常,大多數有經驗的面試官,不會因為一個問題輕易對面試者下結論.會盡量引導面試者展示他的真實水平.這種問題是開場熱身,然後根據你的回答拓展問題.

知識拓展

迴歸正題,對於java平台的理解,可以從很多方面簡明扼要的談,例如;java語言特性包括泛型,lambda等語言特性.基礎類庫,包括集合,io\nio,網路,並發,安全等基礎類庫.對於我們日常工作應用較多的類庫,面試前可以系統總結,有助臨場發揮.

或者談談jvm的一些基礎概念和機制,比如java的類載入機制,常用版本jdk的內嵌的class-loader,例如bootstrap,application,和extension  class-loader,類載入大致過程;載入,驗證,串連,初始化(周志明<深入理解java虛擬機器>很好的jvm上手書籍)自訂class-loader等.還有垃圾收集的基本原理,最常見的垃圾收集器,如cms,g1等對於適用於什麼樣的工作負載也要心理有數,這些都是可以拓展的領域,在後面專欄進行更系統介紹.

jdk或java領域的工具,如編譯器,運行時環境,安全工具,診斷和監控工具.這些基本工具是日常日常工作效率的保證.而對於其他的語言平台,也是觸類旁通.

java面試題(楊曉峰)---談談你對java平台的理解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.