原创 Java 編程思想12.5-異常說明

1.異常說明使用了附加的關鍵字,throws,後面接一個潛在的異常類型列表。 2.這種在編譯時被強制檢查的異常稱作被檢查的異常

原创 Java編程思想13.2-“+”與StringBuilder

1.重載的“+”與StringBuilder。雖然我們在源代碼中並沒有使用StringBuilder類,但是編譯器卻自作主張的使用了它,因爲它更高效。   注意:用於String的“+”與“+=”是java 中僅有的兩個重載過的操作符。

原创 Java編程思想13.3-無意識的遞歸

1.無意識的遞歸。如果你希望toString()方法打印出對象的內存地址,也許你會考慮使用this關鍵字。這會引起遞歸。正確的做法是調用super.toString()方法。

原创 Java編程思想12.12-其他可選的方式

1.異常處理的一個重要原則是“只有你在知道如何處理的情況下才能捕獲異常”。 2.異常處理的一個重要目標就是把錯誤處理的代碼同錯誤發生的地點相分離。 3.被檢查的異常。它強迫你在可能還沒有準備好處理錯誤的時候被迫加上了catch這就導致了吞

原创 Java 編程思想12.4-創建自定義的異常

1.對於異常來說,最重要的就是類名 點贊 收藏 分享 文章舉報 蝸牛加油快跑 發佈了70 篇原創文章 · 獲贊 2 · 訪問量 2萬+ 私信

原创 Java 編程思想12.2-基本異常

1.異常情形。是指阻止當前方法或者作用域繼續執行的問題。 2.異常與恢復。我們在程序中可以擁有各種不同的恢復點。如果程序的某部分失敗了,異常將“恢復”到程序中某個已知穩定點上。 異常參數。我們只是用new在堆上創建對象,標準的異常類都有兩

原创 Java 編程思想12.6-捕獲所有異常

1.可以只寫一個異常處理來捕獲所有類型的異常。 2.棧軌跡。printStackTrace()方法提供的信息可以由getStackTrace()方法直接訪問,這個方法將返回一個由棧軌跡中的元素構成的數組,其中每一個因素表示棧中的一幀。 3

原创 Java 編程思想12.7-Java標準異常

1.Throwable這個java類被用來表示任何可以作爲異常拋出的類。Exception是可以被拋出的基本類型,在java類庫、用戶方法以及運行時故障都可能拋出Exception型異常。所以Java程序員關心的基類型通常是Excepti

原创 Java 編程思想12.10-構造器

1.對於在工作階段要拋出的異常,並且要求清理的類,最安全的使用方法是嵌套的try子句。 即:在創建一個要清理的對象之後,立即進入一個try-finally語句塊。 點贊 收藏 分享 文章舉報

原创 Java編程思想12.8-使用finally進行清理

1.finally用來做什麼。當要把內存之外的資源恢復到它們的初始狀態時,就要用到finally子句。 2.甚至在異常沒有被當前的異常處理程序捕獲的情況下,異常處理機制也會在跳到更高一層的異常處理程序之前,執行finally子句。 3.在

原创 Java編程思想13.5-格式化輸出

1.printf() 2.System.out.format()。和printf差不多。 3.java.util.Formatter類。可以將Formatter看作是一個翻譯器,它將你的格式化字符串與數據翻譯成需要的結果。Formatte

原创 Java編程思想13.1-不可變的String

0.可以證明字符串操作時計算機程序中最常見的行爲。 1.String對象是不可變性。查看JDK文檔你就會發現,String類中每一個看起來會修改String值的 方法,實際上是創建一個全新的String對象,以包含修改後的字符串。

原创 Java編程思想12.9-異常的限制

1.概念。當覆蓋方法的時候,只能拋出在基類方法的異常說明裏列出的那些異常。不可以不在基類的異常說明列表中。 2.異常限制對構造器不起作用。派生類的構造器的異常說明必須不少於基類構造器的異常說明。且派生類構造器不能捕獲基類構造器拋出的異常。

原创 Java編程思想12.11-異常匹配

1.拋出異常的時候,異常處理系統會按照代碼的書寫順序找出“最近”的處理程序。找到之後,就不再繼續查找了。 匹配時,可以是異常的基類,此時,程序就會認爲已經找到最近的異常處理。 點贊 收藏 分享 文章舉