1 引子try…catch…finally恐怕是大家再熟悉不過的語句了,而且感覺用起來也是很簡單,邏輯上似乎也是很容易理解。不過,我親自體驗的“教訓”告訴我,這個東西可不是想象中的那麼簡單、聽話。不信?那你看看下面的代碼,“猜猜”它執行後的結果會是什嗎?不要往後看答案、也不許執行代碼看真正答案哦。如果你的答案是正確,那麼這篇文章你就不用浪費時間看啦。public class TestException{ public TestException() { }
使用 java 代碼讀取 excel 檔案代碼時報錯如下:jxl.read.biff.BiffException: Unable to recognize OLE stream at jxl.read.biff.CompoundFile.<init>(CompoundFile.java:116) at jxl.read.biff.File.<init>(File.java:127) at
//class Classifypublic class Classify{//class Classifypublic class Classify{ public static void removeNonLetters(String original) { int a=0,b=0,c=0; char aCharacter; for(int x=0;x<original.length();x++) {
在Android項目中寫了一個包含main方法的Java程式,在Run as/Java application時出現如下錯誤: ## A fatal error has been detected by the Java Runtime Environment:## Internal Error (classFileParser.cpp:3375), pid=6184, tid=6300# Error: ShouldNotReachHere()## JRE version:
改bug,發現一個保留字transient。很奇怪,從來沒見過,也從來沒用過。 用google查了一把,大概意思是:Java語言的關鍵字,用來表示一個域不是該對象序列化的一部分。當一個對象被序列化的時候,transient型變數的值不包括在序列化的表示中,然而非transient型的變數是被包括進去的。還是不大明白。 後來,終於搜到這篇文章,寫得很詳細。Be Careful With Transient Data 怕萬一這篇文章連結失效,收藏起來。Be Careful
public class TestList {private static final int len = 10;public static void main(String[] args) {Student[] array = new Student[len];Student stu = new Student();stu.setName("name " + 0);stu.setNo("no " + 0);Student stu2 = stu;for(int i=1; i<len; i+