์์ฑ์์ ์๋ฉธ์
์.. 2๋ฌ์ ์ง๋ฌธ์ด๊ธฐ๋ ํ๋ฐ ์ ๋ ๊ถ๊ธํด์ ์ฐพ์๋ดค์ต๋๋ค. 1. new ๋ก ์์ฑํ ์น๊ตฌ๋ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ํน์ ํด๋์ค์ ๋ํ ์ธ์คํด์ค๋ฅผ ์์ฑํ ๋ ์ฌ์ฉํ๋ ํํ์์ธ๋ฐ ์ด๋ฅผ ์ ์ฅํ๋ ๋ณ์๋ฅผ ๊ฐ์ฒด ๋ณ์๋ผ๊ณ ํฉ๋๋ค. ๊ฐ์ฒด ๋ณ์์ ์ ์ฅ์ด ์ด๋ฃจ์ด์ง๋ ๋ฐฐ์ด์ด๋ผ๊ณ ๋ณผ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค. ์๋ฅผ๋ค์ด ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๊ฐ ์์ ๋ int[] arr = new int[n]; ๋ฐฐ์ด์ ๋ง๋ ๋ค๊ธฐ๋ณด๋ค๋ "1๊ฐ ์ด์์ ์ผ๋ จ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋นํ๋๋ฐ ํด๋น ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ์๋ n๊ฐ ๋ค"๋ผ๋ ์๋ฏธ๊ฐ ์๋ฐ์์๋ ์ข ๋ ๋ง๋๊ฑฐ ๊ฐ๊ธฐ๋ ํ๋ค์. 2. ArrayIndexOutOfBoundsException ๋ฐฐ์ด์ ์ํ ์์ธ๊ฐ ๋ณ๋๋ก ์กด์ฌํ๋ค๋ ๊ฒ์ด ํด๋์ค์ด๊ธฐ ๋๋ฌธ์ธ ๊ฒ ๊ฐ์ต๋๋ค. 3. int ์์ฒด๊ฐ ํด๋์ค์ด๋ค. ์ ์ผ๋ฉด์ ์ฐพ๋ค๊ฐ ๋ฐ๊ฒฌํ๋๋ฐ ๊ธฐ๋ณธ ์๋ฃํ๋ ํด๋์ค๋ค์. https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html ์ค๋ผํด์์ ์ ๊ณตํ๋ ๋ฌธ์๋ฅผ ๋ดค๋๋ฐ ๊ธฐ๋ณธ ์๋ฃํ๋ ํด๋์ค๋ผ๊ณ ํ๋ค์. java.lang ํจํค์ง๋ ํ๋ก์ ํธ ์์ฑํ ๋ ์๋์ผ๋ก import ๋๋ ํจํค์ง ์ธ๋ฐ ์ฌ๊ธฐ์ ํด๋์ค๋ก ์ ์ ๋์ด์๊ณ BNF๋ฌธ์๋ฅผ ์์ง ๋ณด์ง ์์์ง๋ง ์์ฃผ ์ฐ๋ ์๋ฃ๋ค์ ๋ํด ๋ฌธ๋ฒ์ ์ผ๋ก ๋ฆฌํฐ๋ด ๊ฐ๋ค ์ฒ๋ผ ์ฌ์ฉํ ์ ์๋๋ก ํด์ค๊ฑฐ ๊ฐ์์. ๋๋ฆ ์ด์ฌํ ์ฐพ์๋ณด๊ธด ํ๋๋ฐ ๋์์ด ๋์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค. ์ด๊ณตํ์ธ์~~ ---์ถ๊ฐ--- ๋๋ฌด ์ฐ์ฐํด์ BNF ๋ณด๊ณ ์๋๋ฐ์. ์์์ int ํด๋์ค๋ wrapper ํด๋์ค๋ผ๊ณ ์๋ฃํ์ ๋ค๋ฃฐ ์ ์๋ ์ ํธ์ฑ ํด๋์ค์ธ ๊ฒ ๊ฐ๋ค์. BNF ์ ์์์์๋ int, float ๋ฑ๋ฑ์ primitive type ์ผ๋ก ์ ์๊ฐ ๋๊ณ ์์ด์ ๊ธฐ๋ณธ ์๋ฃํ์ผ๋ก ์ปดํ์ผ์ด ์ด๋ฃจ์ด ์ง๋ ๊ฒ ๊ฐ๊ณ ๋ฐฐ์ด์ ๊ฒฝ์ฐ ์์ ํ์
์์ฑ๊ฐ reference type> ::= class or interface type> | array type> ์ด๋ ๊ฒ ๋์ด์๋ค์. ์ปดํ์ผ๋ฌ๊ฐ ๋ ํผ๋ฐ์ค๋ก ์ ์ํ๊ณ ์ฒ๋ฆฌํ๊ณ ์์ด์ ์ฐธ์กฐ ํ์
์ด๋ผ๊ณ ์ดํดํด์ผํ ๊ฑฐ ๊ฐ์์. ๋ฌธ๋ฒ ์ ์์๋ค ๋ชป์ ๋ฐ์ ๋์๋ค์;;; BNF ๋งํฌ: https://cs.au.dk/~amoeller/RegAut/JavaBNF.html