LetsCoding.cn

          天地之間有桿秤,拿秤砣砸老百姓。

          編程實踐

          JVM中finally子句介紹
               摘要: 歡迎來到“Under The Hood”第七期。本期我們介紹JVM處理finally子句的方式及相關字節(jié)碼。你可能需要閱讀往期的文章才能更好的理解本文。

          finally子句

          JVM執(zhí)行Java字節(jié)碼時,它有幾種方式可以退出一個代碼塊(花括號中間的語句)。其中之一,就是簡單的執(zhí)行完其中所有的語句,然后退出代碼塊。第二種,JVM可能會在代碼塊中間的任何一處,遇到像break,continue,return之類的語句,強制它跳出該代碼塊。第三種,JVM可能會在執(zhí)行過程中,出現(xiàn)了異常,然后它跳轉到匹配的catch子句,或者沒有找到相應的catch子句,直接退出當前線程。由于單個代碼塊有如此多的潛在退出點(exit point),擁有一個簡單的方式來表達“無論代碼塊以什么方式退出,有些事情總能發(fā)生”是很值得的。然后就有了try-finally子句。  閱讀全文

          posted @ 2014-06-08 02:42 Rolandz 閱讀(2195) | 評論 (1)  編輯

          JVM中的異常處理
               摘要: 歡迎來到“Under The Hood”第六期。本期我們介紹JVM處理異常的方式,包括如何拋出和捕獲異常及相關的字節(jié)碼指令。但本文不會討論finally子句,這是下期的主題。你可能需要閱讀往期的文章才能更好的理解本文。

          異常處理

          在程序運行時,異常讓你可以平滑的處理意外狀況。為了演示JVM處理異常的方式,考慮NitPickyMath類,它提供對整數(shù)進行加,減,乘,除以及取余的操作。  閱讀全文

          posted @ 2014-06-02 03:54 Rolandz 閱讀(2778) | 評論 (0)  編輯

          對象和數(shù)組:JVM中,處理對象和數(shù)組的字節(jié)碼介紹
               摘要: 歡迎來到“Under The Hood”第五期。本期我們來看看JVM中處理對象和數(shù)組的字節(jié)碼。你可能需要閱讀往期的文章才能更好的理解本文。  閱讀全文

          posted @ 2014-05-30 02:14 Rolandz 閱讀(1352) | 評論 (1)  編輯

          初窺JVM浮點運算
               摘要: JVM支持IEEE-754浮點數(shù)標準(1985)。該標準定義了32位和64位浮點數(shù)的格式,以及在此之上的各種運算。在JVM中,浮點運算是基于32位float數(shù)和64位double數(shù)的。對每個操作float數(shù)的字節(jié)碼,都有一個對應的操作double數(shù)的版本。  閱讀全文

          posted @ 2014-05-26 15:09 Rolandz 閱讀(1055) | 評論 (1)  編輯

          字節(jié)碼基礎:JVM字節(jié)碼初探
               摘要: 字節(jié)碼是JVM的機器語言。JVM加載類文件時,對類中的每個方法,它都會得到一個字節(jié)碼流。這些字節(jié)碼流保存在JVM的方法區(qū)中。在程序運行過程中,當一個方法被調用時,它的字節(jié)碼流就會被執(zhí)行。根據(jù)特定JVM設計者的選擇,它們可以通過解釋的方式,即時編譯(Just-in-time compilation)的方式或其他技術的方式被執(zhí)行。  閱讀全文

          posted @ 2014-05-22 02:07 Rolandz 閱讀(5153) | 評論 (4)  編輯

          Java類文件的基本結構
               摘要: Java類文件(.class文件)是一個為已編譯Java程序仔細定義的格式。Java源代碼被編譯成能夠被任何JVM加載和執(zhí)行的類文件。在被JVM加載之前,類文件可能是由網絡傳輸而來。類文件是獨立于底層平臺的,所以適用于更多的地方。它們由簡潔的JVM字節(jié)碼組成,這樣就能輕裝上陣。類文件常常被壓縮,以極快的速度通過網絡,到達世界各地的JVM。  閱讀全文

          posted @ 2014-05-19 03:49 Rolandz 閱讀(1778) | 評論 (2)  編輯

          短小精悍的虛擬機:JVM基本結構和功能介紹
               摘要: JVM(Java虛擬機)是一個運行已編譯Java程序的抽象計算機。之所以說是”虛擬“的,是因為它基于“真正”的硬件平臺和操作系統(tǒng),一般以軟件的形式實現(xiàn)。所有的Java程序都為JVM而編譯。因此,在特定平臺上運行已編譯Java程序之前,該平臺的JVM必須先要被實現(xiàn)。  閱讀全文

          posted @ 2014-05-17 21:50 Rolandz 閱讀(1619) | 評論 (0)  編輯

          Java中,狀態(tài)模式和策略模式的區(qū)別
               摘要: Java開發(fā)者,要想恰當?shù)氖褂脿顟B(tài)模式和策略模式,必須清楚的理解它們之間的區(qū)別。雖然狀態(tài)模式和策略模式擁有相似的結構,雖然它們都基于SOLID設計原則中的O(開閉原則),但是,它們的意圖是完全不同的。  閱讀全文

          posted @ 2014-05-16 03:23 Rolandz 閱讀(6416) | 評論 (1)  編輯

          Java 8:Lambda表達式(二)
               摘要: 上一篇中,你看到了Java中Lambda表達式的一種形式:參數(shù) + “->” + 表達式。如果代碼實現(xiàn)的邏輯一條語句完成不了,你可以寫成類似方法的形式:代碼寫在“{}”中,再加上顯式的return語句。例如:  閱讀全文

          posted @ 2014-05-11 12:07 Rolandz 閱讀(1841) | 評論 (2)  編輯

          Java 8:Lambda表達式(三)
               摘要: 變量作用域

          你經常會想,如果可以在Lambda表達式里訪問外部方法或類中變量就好了。  閱讀全文

          posted @ 2014-05-11 12:07 Rolandz 閱讀(3124) | 評論 (0)  編輯

          Java 8:Lambda表達式(一)
               摘要: 在上世紀九十年代,Java被設計成了OOP語言,在當時,OOP是軟件開發(fā)中的標桿。遠在OOP還沒有出現(xiàn)的時候,已經產生了FP語言,例如Lisp和Scheme,但是它們的益處,并沒有受到學術圈外的人重視。最近,F(xiàn)P的重要性被提升了,因為它非常適合并發(fā)編程和事件驅動編程。然而,這并不意味著OO不好,相反,好的策略應該是混用OOP和FP。就算你對并發(fā)編程不感興趣,這也很有道理。例如,如果編程語言有一個方便寫函數(shù)表達式的語法,集合類庫就能擁有強大的API。  閱讀全文

          posted @ 2014-05-11 12:06 Rolandz 閱讀(1685) | 評論 (1)  編輯

          導航

          統(tǒng)計

          留言簿(1)

          隨筆分類(12)

          隨筆檔案(19)

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 山东省| 旬阳县| 太仆寺旗| 芷江| 时尚| 花垣县| 梅河口市| 锦屏县| 丰县| 嘉禾县| 资源县| 高陵县| 通渭县| 遵化市| 依兰县| 阜阳市| 福建省| 邵武市| 建湖县| 彰化县| 桦甸市| 于田县| 安宁市| 忻城县| 湖口县| 五家渠市| 马边| 沂源县| 昂仁县| 长宁县| 朔州市| 城口县| 黔西| 茌平县| 佛坪县| 墨江| 平遥县| 郎溪县| 梁平县| 洪雅县| 丁青县|