Null Safety
Last updated
Last updated
๋ ์์ ์ฑ์ ๋์ด๋ ๋ฐฉ๋ฒ
์๋์ ๊ฐ์ ์ฝ๋๋ฅผ ๋ง๋ค์ง ์๋ ๋ฐฉ๋ฒ
ํน์ ์๋์ ๊ฐ์ ๋ ์ฒดํฌ๋ฅผ ํ์ง ์์์ ๋ฐ์ํ๋ NPE ๋ฅผ (Null Pointer Exception) ๋ฐฉ์งํ๋ ๋ฐฉ๋ฒ
์๋ฒฝํ ๋ฐฉ๋ฒ์ ์๋์ง๋ง IDE ์์ ๊ฒฝ๊ณ ๋ฅผ ํ์ํจ์ผ๋ก์จ 1์ฐจ์ ์ธ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๊ณ , ์ ํํ ์๋ฌ ์์น๋ฅผ ํ์ธํ ์ ์๋๋ก ๋์
ํด๋น ๊ฐ์ด๋ ํจ์ ๋ฑ์ด Null ์ด ์๋์ ๋ํ๋ด๋ ์ด๋ ธํ ์ด์
org.springframework.lang.NonNull ์ฌ์ฉ
๋ฉ์๋ ํ๋ผ๋ฏธํฐ์ ๋ถ์ด๋ ๊ฒฝ์ฐ: null ์ด ๋ค์ด์ค๋ ๊ฒ์ ์ฌ์ ์ ๋ฐฉ์งํจ
ํ๋กํผํฐ์ ๋ถ์ด๋ ๊ฒฝ์ฐ: null ์ ์ ์ฅํ๋ ๊ฒฝ์ฐ ๊ฒฝ๊ณ
๋ฉ์๋์ ๋ถ์ด๋ ๊ฒฝ์ฐ: null ์ ๋ฆฌํดํ๋ ๊ฒฝ์ฐ ๊ฒฝ๊ณ , ์๋ต๊ฐ์ ์ ์ฅํ๊ฑฐ๋ ํ์ฉํ๋ ์ชฝ๋ NonNull ์ด๋ผ๊ณ ์ ๋ขฐํ๊ณ ์ฌ์ฉ
@NonNull ๊ณผ ๋ฐ๋๋ก ํด๋น ๋ฐ์ดํฐ๊ฐ null ์ผ ์ ์์์ ๋ช ์ํจ
ํด๋น ์ด๋ ธํ ์ด์ ์ด ๋ถ์ ๊ฐ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ null check ๋ฅผ ํญ์ ์ํํ๋๋ก ๊ฒฝ๊ณ