๐ฏ ์์ดํ 74. ๋ฉ์๋๊ฐ ๋์ง๋ ๋ชจ๋ ์์ธ๋ฅผ ๋ฌธ์ํํ๋ผ.
๋ฉ์๋๊ฐ ๋์ง๋ ์์ธ๋ ๊ทธ ๋ฉ์๋๋ฅผ ์ฌ๋ฐ๋ก ์ฌ์ฉํ๋ ๋ฐ ์์ฃผ ์ค์ํ ์ ๋ณด๋ค. ๋ฐ๋ผ์ ๊ฐ ๋ฉ์๋๊ฐ ๋์ง๋ ์์ธ ํ๋ํ๋๋ฅผ ๋ฌธ์ํํ๋ ๋ฐ ์ถฉ๋ถํ ์๊ฐ์ ์์์ผ ํ๋ค. ๊ฒ์ฌ ์์ธ๋ ํญ์ ๋ฐ๋ก๋ฐ๋ก ์ ์ธํ๊ณ , ๊ฐ ์์ธ๊ฐ ๋ฐ์ํ๋ ์ํฉ์ ์๋ฐ๋
์ @throws
ํ๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์ ํํ ๋ฌธ์ํํ์.
/**
* ... ์๋ต
*
* @throws SecurityException if a security manager exists and its
* <code>checkPermission</code> method denies enabling
* subclassing.
* @throws IOException if an I/O error occurs while creating this stream
*
*/
protected ObjectInputStream() throws IOException, SecurityException { ... }
๊ฒ์ฌ ์์ธ๋ง ๋ฉ์๋ ์ ์ธ์ throws ๋ฌธ์ ์ผ์ผ์ด ์ ์ธํ๊ณ , ๋น๊ฒ์ฌ ์์ธ๋ ๋ฉ์๋ ์ ์ธ์๋ ๊ธฐ์
ํ์ง ๋ง์. ๋ฐ์ ๊ฐ๋ฅํ ์์ธ๋ฅผ ๋ฌธ์๋ก ๋จ๊ธฐ์ง ์์ผ๋ฉด ๋ค๋ฅธ ์ฌ๋์ด ๊ทธ ํด๋์ค๋ ์ธํฐํ์ด์ค๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ ์ด๋ ต๊ฑฐ๋ ์ฌ์ง์ด ๋ถ๊ฐ๋ฅํ ์๋ ์๋ค.
์ฐธ๊ณ ์๋ฃ
Joshua Bloch, ใEffective Java 3/Eใ, ๊ฐ์๋งต์ ์ฎ๊น, ํ๋ก๊ทธ๋๋ฐ์ธ์ฌ์ดํธ(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=