JavaRush /Java Blog /Random-KO /๋ฒˆ์—ญ: Java๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์„ ๊ดด๋กญํžˆ๋Š” 6๊ฐ€์ง€ Java ์˜ˆ์™ธ.
profeg
๋ ˆ๋ฒจ 18

๋ฒˆ์—ญ: Java๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์„ ๊ดด๋กญํžˆ๋Š” 6๊ฐ€์ง€ Java ์˜ˆ์™ธ.

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค

์ž๋ฐ” ์ดˆ๋ณด์ž๋ฅผ ๊ดด๋กญํžˆ๋Š” 6๊ฐ€์ง€ ์ž๋ฐ” ์˜ˆ์™ธ

(์›๋ณธ) (Java์™€ ์˜์–ด ๋‘˜ ๋‹ค ์ฒ˜์Œ์ด๋ผ ๋น„ํŒ๊ณผ ๋„์›€์„ ๋ฐ›์œผ๋ฉด ๊ธฐ์  ๊ฒƒ์ž…๋‹ˆ๋‹ค) ์ด์ „๊ณผ ํ˜„์žฌ ๋ชจ๋‘ ๋‹ค์‹œ ํ•œ ๋ฒˆ ์„ค๋ช…ํ•ด์•ผ ํ•  ๋ช‡ ๊ฐ€์ง€ ์ผ๋ฐ˜์ ์ธ ์˜ˆ์™ธ๋กœ ์ธํ•ด ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ์žˆ๋Š” ๋งŽ์€ Java ์ดˆ๋ณด์ž๋ฅผ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹ค๋ฅธ ์ˆ˜์„ Java ๊ฐœ๋ฐœ์ž๋“ค๋„ ์ดˆ๋ณด์ž๊ฐ€ ์ด๋Ÿฌํ•œ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋„๋ก ๋•๊ธฐ ์œ„ํ•ด ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๋‚ด ๋ฐœ์ „์„ ์œ„ํ•ด ์ด ๊ธ€์„ ์ผ๋‹ค. ์ด ๊ธฐ์‚ฌ์— ์ž์œ ๋กญ๊ฒŒ ์˜๊ฒฌ์„ ์ œ์‹œํ•˜๊ฑฐ๋‚˜ ์•„๋ž˜ ๋ชฉ๋ก์— ์˜ˆ์™ธ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”.
1. NoClassDefFoundError
์ด๋Š” Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์„ธ๊ณ„์—์„œ ๋Œ€๋ถ€๋ถ„์˜ ์‹ ๊ทœ Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง๋ฉดํ•˜๊ฒŒ ๋˜๋Š” ""๋ฉ”์ธ" ์Šค๋ ˆ๋“œ์˜ ์˜ˆ์™ธ NoClassDefFoundError" ์™€ ๊ฐ™์€ ๋ฉ”์‹œ์ง€๊ฐ€ ํฌํ•จ๋œ ์˜ˆ์™ธ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค . ์ดˆ๋ณด์ž๋Š” "Hello world!"๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๊ณ  ๋ช…๋ น์ค„๋กœ ์ด๋™ํ•˜์—ฌ "java ..."๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Enter ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ๋‹ค์Œ BAM! =). ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ๊ทธ๋žจ์ด "Hello world!"๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ƒ…๋‹ˆ๋‹ค. ๋ชจ๋‹ˆํ„ฐ์—์„œ๋Š” ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. NoClassDefFoundError๋Š” JVM(Java Virtual Machine)์ด ์‹œ์ž‘ ์‹œ ํด๋ž˜์Šค์— ์•ก์„ธ์Šคํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๊ณ  ์ปดํŒŒ์ผ ์‹œ ๋™์ผํ•œ ํด๋ž˜์Šค๊ฐ€ ๋ฐœ๊ฒฌ๋˜์—ˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ํ•ด๋‹น ํด๋ž˜์Šค๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์„ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ˆ์™ธ๋Š” "java" ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ํด๋ž˜์Šค ๊ฒฝ๋กœ๊ฐ€ ์ œ๋Œ€๋กœ ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์— ๊ฐ€์žฅ ์ž์ฃผ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ด ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ด์œ ์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.
  • ํด๋ž˜์Šค๋Š” -classpath์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • CLASSPATH ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ์žฌ์ •์˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Windows ๋ช…๋ น "set"์„ ์‚ฌ์šฉํ•˜์—ฌ ์กด์žฌ ์—ฌ๋ถ€์™€ ์ •ํ™•์„ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์€ ์—ฌ๊ธฐ์— ๋” ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜ํ•œ CLASSPATH ํ™˜๊ฒฝ ๋ณ€์ˆ˜์™€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ํ‚ค -classpath ๊ฐ„์˜ ์ฐจ์ด์ ์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ „๋ฌธ๊ฐ€๋“ค์€ CLASSPATH ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค . ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ -classpath ํ‚ค๋ฅผ ์ธํ„ฐํ”„๋ฆฌํ„ฐ์— ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
2. ClassNotFoundException
ClassNotFoundException์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์‹œ์ž‘ํ•˜์ž๋งˆ์ž ์ดˆ๋ณด์ž์—๊ฒŒ ์•…๋ชฝ์ด ๋˜๋Š” ๋˜ ๋‹ค๋ฅธ ์˜ˆ์™ธ์ž…๋‹ˆ๋‹ค. ํฅ๋ฏธ๋กญ๊ฒŒ๋„ ์ผ๋ฐ˜ Java ๊ฐœ๋ฐœ์ž๋Š” ClassNotFoundException๊ณผ NoClassDefFoundError ์˜ˆ์™ธ๋ฅผ ํ˜ผ๋™ํ•˜๋Š” ๊ฒฝ์šฐ ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค . ๋”ฐ๋ผ์„œ ์ด ๋‘ ๊ฐ€์ง€ ์˜ˆ์™ธ์˜ ์ฐจ์ด์ ์€ ์ฃผ๋‹ˆ์–ด ์ง์œ„ ๋ฉด์ ‘์—์„œ ๊ฐ€์žฅ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ ์ค‘ ํ•˜๋‚˜๋กœ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค . ClassNotFoundException์€ JVM์ด ํŠน์ • ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๊ณ  ํด๋ž˜์Šค ๊ฒฝ๋กœ์—์„œ ํ•ด๋‹น ํด๋ž˜์Šค๋ฅผ ์ฐพ์ง€ ๋ชปํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค . ์ƒˆ๋กœ์šด Java ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฒ˜์Œ์œผ๋กœ ์ด๋ฅผ ์ ‘ํ•˜๊ฒŒ ๋˜๋Š” ์ผ๋ฐ˜์ ์ธ ์žฅ์†Œ ์ค‘ ํ•˜๋‚˜๋Š” JDBC ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์„œ Class.forName("JDBCdriver")์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ClassNotFoundException์— ๋Œ€ํ•œ ์ข‹์€ ๊ธฐ์‚ฌ๋Š” ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค . ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ•์€ Java ํด๋ž˜์Šค๋กœ๋” ์˜ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค. Win/Unix ํ™˜๊ฒฝ์—์„œ Java ํด๋ž˜์Šค ๊ฒฝ๋กœ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . Java ๋ฌธ์„œ ์— ๋ช…์‹œ๋œ ๋Œ€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
  • Class.forName ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ .class ํŒŒ์ผ์ด ํด๋ž˜์Šค ๊ฒฝ๋กœ์— ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์—ฌ๊ธฐ์— ๋‚˜์—ด๋œ ์„ธ ๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค ์ค‘ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ์‹œ๋‚˜๋ฆฌ์˜ค์ž…๋‹ˆ๋‹ค.
  • ํด๋ž˜์Šค ๋กœ๋”๊ฐ€ loadClass๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ.
  • ํด๋ž˜์Šค ๋กœ๋”๊ฐ€ findSystemClass๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ž˜์Šค๋ฅผ ๋กœ๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ.
3. ๋„ํฌ์ธํ„ฐ์˜ˆ์™ธ
์ด ์˜ˆ์™ธ๋Š” ์ฒ˜์Œ ๋‘ ๊ฐœ๋ณด๋‹ค ์ดˆ๋ณด์ž๊ฐ€ ์ดํ•ดํ•˜๊ธฐ ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์ด ์˜ˆ์™ธ๋Š” ์‰ฝ๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์˜ˆ์™ธ์— ๋Œ€ํ•œ ๋ฉ”์‹œ์ง€๋Š” ํ•ด๋‹น ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•œ ํ”„๋กœ๊ทธ๋žจ์˜ ์ค„ ๋ฒˆํ˜ธ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ์˜ˆ์™ธ๋Š” JVM์ด ๊ฐ์ฒด์— ์•ก์„ธ์Šคํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ ๊ฐ์ฒด์— ๋Œ€ํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๊ณ  ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ ๋Œ€์‹  null์„ ์ˆ˜์‹ ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. Java ๋ฌธ์„œ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋„ ๋ช…์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์œ ํšจํ•˜์ง€ ์•Š์€ ๊ฐœ์ฒด์˜ ๋ฉ”์„œ๋“œ์— ์•ก์„ธ์Šคํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. (์ฆ‰, JVM ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ ๋Œ€์‹  null์ด ๋ฉ๋‹ˆ๋‹ค)
  • ์œ ํšจํ•˜์ง€ ์•Š์€ ๋ฐฐ์—ด์˜ ๊ธธ์ด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. (์˜ˆ๋ฅผ ๋“ค์–ด ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š์Œ)
  • Object ์œ ํ˜•์˜ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฐฐ์—ด ์š”์†Œ์— ์•ก์„ธ์Šคํ•˜๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค. (์ฆ‰, ๊ฐ์ฒด ์ฐธ์กฐ ๋Œ€์‹  ๋ฐฐ์—ด ์š”์†Œ์— null์ด ํฌํ•จ๋œ ๊ฒฝ์šฐ)
์ด ์˜ˆ์™ธ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ NULL์ด ์•„๋‹Œ ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์กฐ๋งŒ๊ฐ„ ์ด๋Š” Java ๊ฐœ๋ฐœ ๊ด€ํ–‰์ด ๋˜์–ด ๋ชจ๋“  ๊ณณ์—์„œ NULL์ด ์•„๋‹Œ ๊ฒ€์‚ฌ๋ฅผ ๋ฐœ๊ฒฌํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.ํฅ๋ฏธ๋กญ๊ฒŒ๋„ NULL์ด ์•„๋‹Œ ๊ฒ€์‚ฌ๋ฅผ ๋ชจ๋“  ๊ณณ์— ์‚ฝ์ž…ํ•˜๋Š” ๊ฒƒ์€ ์ข‹์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์Šคํƒ€์ผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค . ๊ทธ๋ฆฌ๊ณ  NULL์ด ์•„๋‹Œ ๊ฒ€์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ฃผ๋œ ์ด์œ ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹คํŒจ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ null ๊ฐ์ฒด๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ๋ฅผ ์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋Œ€์‹ , ํ”„๋กœ๊ทธ๋ž˜๋จธ ๋Š” ์˜ค๋ฅ˜ ๋ฐœ์ƒ ์‹œ ํ”„๋กœ๊ทธ๋žจ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ• ์ง€์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ๋…ผ๋ฆฌ๋กœ null ๊ฐ’์ด ์•„๋‹Œ ๋นˆ ๊ฐœ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ข‹์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹ ์ž…๋‹ˆ๋‹ค . ๊ทธ๋Ÿฌ๋‚˜ ์ด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์„ ์ฑ„ํƒํ•˜๋Š” ๊ฒƒ์€ ๋ณด๊ธฐ๋ณด๋‹ค ์–ด๋ ต์Šต๋‹ˆ๋‹ค.
์šฐ๋ฆฌ ๋ฆฌ์†Œ์Šค์— ์ด์— ๋Œ€ํ•œ ์ข‹์€ ๊ธฐ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
4. ํด๋ž˜์Šค์บ์ŠคํŠธ์˜ˆ์™ธ
์ด๋Š” ์ดˆ๋ณด์ž์—๊ฒŒ ์นœ์ˆ™ํ•œ ๋˜ ๋‹ค๋ฅธ ์˜ˆ์™ธ๋กœ, ๊ฐœ์ฒด์˜ ํ•˜์œ„ ํด๋ž˜์Šค๊ฐ€ ์•„๋‹Œ ํด๋ž˜์Šค์— ๊ฐœ์ฒด๋ฅผ ์บ์ŠคํŒ…ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ, ์ด๋Š” ์ดํ•ดํ•˜๊ณ  ์‹๋ณ„ํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ์‰ฝ๊ณ  ์ˆ˜์ •ํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„ ์‹œ ๊ฐœ์ฒด ์œ ํ˜•์„ ์•Œ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด ์˜ˆ์™ธ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ํ•œ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์€ "InstanceOf" ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ฒด๊ฐ€ ํŠน์ • ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
5. ArrayIndexOutOfBoundsException
์ด ์˜ˆ์™ธ๋Š” ์„ค๋ช…์ด ํ•„์š” ์—†์œผ๋ฉฐ JVM์ด ์Œ์ˆ˜(-1) ๋˜๋Š” ๋ฐฐ์—ด ํฌ๊ธฐ๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์€ ์ธ๋ฑ์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฐฐ์—ด ์š”์†Œ์— ์•ก์„ธ์Šคํ•˜๋ ค๊ณ  ์‹œ๋„ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ดํ•ดํ•˜๊ณ  ์ •์˜ํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค . ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฃจํ”„๋ฅผ ์ƒ์„ฑํ•  ๋•Œ for (i = 0; i <= cmd_stack.length; i++) System.out.println(cmd_stack[i]); ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ณ  ๊ธธ์ด ๋ฉ”์„œ๋“œ๋Š” ์š”์†Œ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ ๊ทธ ์ˆซ์ž๋Š” ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ๊ฐ’๋ณด๋‹ค 1์ด ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์šฉ for (i = 0; i < cmd_stack.length; i++) System.out.println(cmd_stack[i]);
6. IllegalArgumentException
์ด ์˜ˆ์™ธ๋Š” ๋œ ์ผ๋ฐ˜์ ์ด๋ฉฐ ์ดํ•ด, ์‹๋ณ„ ๋ฐ ํ•ด๊ฒฐ์ด ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ์ด๋Š” JVM์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฉ”์†Œ๋“œ ๋˜๋Š” ์œ ํšจํ•˜์ง€ ์•Š์€ ์ธ์ˆ˜๊ฐ€ ์žˆ๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION