空指針總結

1:NullPointerException由RuntimeException派生出來,是一個運行級別的異常。意思是說可能會在運行的時候纔會被拋出,而且需要看這樣的運行級別異常是否會導致你的業務邏輯中斷。
2:空指針異常發生在對象爲空,但是引用這個對象的方法。例如: String s = null; //對象s爲空(null) int length = s.length();//發生空指針異常
3:一個變量是null,及只有其名,沒有實值內容,也沒分配內存,當你要去取他的長度,對他進行操作就會出現NullPointException,所以生命一個變量時最好給它分配好內存空間,給予賦值。
4:比如變量爲空,而你沒有去判斷,就直接使用,就會出現NullPointException。寫程序時嚴謹些,儘量避免了,例如在拿該變量與一個值比較時,要麼先做好該異常的處理如: if (str == null) { System.out.println(“字符爲空!”); } 當然也可以將這個值寫在前面進行比較的,例如,判斷一個String的實例s是否等於“a”,不要寫成s.equals(“a”),這樣寫容易拋出NullPointerException,而寫成"a".equals(s)就可以避免這個問題。不過對變量先進行判空後再進行操作比較好
5:儘量避免返回null,方法的返回值不要定義成爲一般的類型,而是用數組。這樣如果想要返回null的時候,就返回一個沒有元素的數組。就能避免許多不必要的NullPointerException,使用NullObject返回代替返回null確是一種不錯的選擇。

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