๐ฏ ์์ดํ 71. ํ์ ์๋ ๊ฒ์ฌ ์์ธ ์ฌ์ฉ์ ํผํ๋ผ.
๊ฒฐ๊ณผ๋ฅผ ์ฝ๋๋ก ๋ฐํํ๊ฑฐ๋ ๋น๊ฒ์ฌ ์์ธ๋ฅผ ๋์ง๋๊ฒ๊ณผ ๋ฌ๋ฆฌ, ๊ฒ์ฌ ์์ธ๋ ๋ฐ์ํ ๋ฌธ์ ๋ฅผ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ฒ๋ฆฌํ์ฌ ์์ ์ฑ์ ๋์ด๊ฒ๋ ํด์ค๋ค. ๋ฌผ๋ก , ๊ฒ์ฌ ์์ธ๋ฅผ ๊ณผํ๊ฒ ์ฌ์ฉํ๋ฉด ์คํ๋ ค ์ฐ๊ธฐ ๋ถํธํ API๊ฐ ๋๋ค. ์ด๋ค ๋ฉ์๋๊ฐ ๊ฒ์ฌ ์์ธ๋ฅผ ๋์ง ์ ์๋ค๊ณ ์ ์ธ๋๋ค๋ฉด, ์ด๋ฅผ ํธ์ถํ๋ ์ฝ๋์์๋ catch
๋ธ๋ก์ ๋์ด ๊ทธ ์์ธ๋ฅผ ๋ถ์ก์ ์ฒ๋ฆฌํ๊ฑฐ๋ ๋ ๋ฐ๊นฅ์ผ๋ก ๋์ ธ ๋ฌธ์ ๋ฅผ ์ ํํด์ผ๋ง ํ๋ค. ์ด๋ ์ชฝ์ด๋ API ์ฌ์ฉ์์๊ฒ ๋ถ๋ด์ ์ค๋ค. ๋๊ตฌ๋ ๊ฒ์ฌ ์์ธ๋ฅผ ๋์ง๋ ๋ฉ์๋๋ ์คํธ๋ฆผ ์์์ ์ง์ ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ์๋ฐ 8๋ถํฐ๋ ๋ถ๋ด์ด ๋์ฑ ์ปค์ก๋ค.
public class Main {
public static void main(String[] args) {
try {
extracted();
} catch (IOException e) {
e.printStackTrace();
}
}
private static void extracted() throws IOException {
byte[] bytes = {'a','b','c'};
System.out.write(bytes);
}
}
๊ฒ์ฌ ์์ธ๋ฅผ ํํผํ๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ์ ์ ํ ๊ฒฐ๊ณผ ํ์ ์ ๋ด์ ์ต์ ๋์ ๋ฐํํ๋ ๊ฒ์ด๋ค. ์ด ๋ฐฉ์์ ๋จ์ ์ด๋ผ๋ฉด ์์ธ๊ฐ ๋ฐ์ํ ์ด์ ๋ฅผ ์๋ ค์ฃผ๋ ๋ถ๊ฐ ์ ๋ณด๋ฅผ ๋ด์ ์ ์๋ค๋ ๊ฒ์ด๋ค. ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก, ๊ฒ์ฌ ์์ธ๋ฅผ ๋์ง๋ ๋ฉ์๋๋ฅผ 2๊ฐ๋ก ์ชผ๊ฐ ๋น๊ฒ์ฌ ์์ธ๋ก ๋ฐ๊ฟ ์ ์๋ค. ํ์ง๋ง ์ด๊ฒ ๋ํ ๋ชจ๋ ์ํฉ์ ์ ์ฉํ ์๋ ์๋ค. ๊ทธ๋๋ ์ ์ฉํ ์๋ง ์๋ค๋ฉด ๋ ์ฐ๊ธฐ ํธํ API๋ฅผ ์ ๊ณตํ ์ ์๋ค.
์ฐธ๊ณ ์๋ฃ
Joshua Bloch, ใEffective Java 3/Eใ, ๊ฐ์๋งต์ ์ฎ๊น, ํ๋ก๊ทธ๋๋ฐ์ธ์ฌ์ดํธ(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=