1. 程式人生 > >萬惡的NPE差點讓我半個月工資沒了

萬惡的NPE差點讓我半個月工資沒了

### 引言 最近看到《阿里巴巴Java開發手冊》第11條規範寫到: > **防止 NPE ,是程式設計師的基本修養** > `NPE(Null Pointer Exception)`一直是開發中最頭疼的問題,也是最容易忽視的地方。記得剛開始工作的時候所在的專案組線上出現最多的`bug`不是邏輯業務`bug`而是`NPE`,所以後面專案組出了一個奇葩的規矩,線上如果誰出現一個NPE的問題就罰款`100元`,用作團建費用。如果專案組每個人一個月都出現個兩三個`NPE`的話。那麼專案組是不是每個月都可以去團建下(自己掏錢海吃海喝,心不心疼)。不過自從這個規矩實施以來,線上的`NPE`就漸漸的少了,從最初的一個月團建一次到最後的半年團建一次。大家寫程式碼都比較謹慎了,只要用到物件或者集合的時候二話不說上來先判空,所以產生的`NPE`就少了。 ### 業務中返回結果的空值 在我們常見的業務開發中是不是經常會有這樣的介面: ```java package com.workit.demo.nullexcption; import com.workit.demo.proxy.User; import java.util.List; public interface IUserSearchService { /** * 查詢使用者列表 * @return */ List