JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.lang
Ŭ·¡½º Throwable

java.lang.Object 
  |
  +--java.lang.Throwable
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
Serializable
Á÷°èÀÇ ±âÁ¸ÀÇ ¼­ºê Ŭ·¡½º:
Error , Exception

public class Throwable
extends Object
implements Serializable

Throwable Ŭ·¡½º´Â Java ¾ð¾îÀÇ ¸ðµç ¿¡·¯¿Í ¿¹¿ÜÀÇ ½´ÆÛ Ŭ·¡½ºÀÔ´Ï´Ù. ÀÌ Å¬·¡½º (¶Ç´Â ±× ¼­ºê Ŭ·¡½º ÁßÀÇ 1 °³)ÀÇ ÀνºÅϽºÀÎ ¿ÀºêÁ§Æ®¸¸ÀÌ Java °¡»ó ¸Ó½Å¿¡ ÀÇÇØ ½½·Î¿ì µÇ´ÂÁö Java ÀÇ throw ±¸¹®¿¡ ÀÇÇØ ½½·Î¿ì µË´Ï´Ù. ¶È°°ÀÌ, ÀÌ Å¬·¡½º ¶Ç´Â ±× ¼­ºê Ŭ·¡½º ÁßÀÇ 1 kr¸¸ÀÌ catch ÀýÀÇ ÀμöÀÇ ÇüÅ·ΠÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

Åë»ó,Error ¹× Exception ÀÇ 2 °³ÀÇ ¼­ºê Ŭ·¡½ºÀÇ ÀνºÅϽº´Â ¿¹¿ÜÀûÀÎ »óȲÀÌ ¹ß»ýÇÑ °ÍÀ» ³ªÅ¸³»±â À§Çؼ­(¶§¹®¿¡) »ç¿ëµË´Ï´Ù. ÀÌ·¯ÇÑ ÀνºÅϽº´Â Åë»ó, °ü·ÃÇÏ´Â Á¤º¸ (½ºÅà Ʈ·¹À̽º µ¥ÀÌÅ͵î)¸¦ ÀúÀåÇϱâ À§Çؼ­, ¿¹¿ÜÀûÀÇ »óȲ¿¡ µû¶ó »õ·Ó°Ô ÀÛ¼ºµË´Ï´Ù.

½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡´Â ÀÛ¼º½ÃÀÇ ±× threadÀÇ ½ÇÇà ½ºÅÃÀÇ snapshot°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ Å¬·¡½º¿¡´Â ¿¡·¯¿¡ ´ëÇÑ »ó¼¼ÇÑ Á¤º¸¸¦ ³ªÅ¸³»´Â ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀεµ Æ÷ÇԵ˴ϴÙ. ÃÖÁ¾ÀûÀ¸·Î, À̰ÍÀº ¡¸¿øÀΡ¹ (ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ½½·Î¿ì¸¦ ÀÏÀ¸Å² ´Ù¸¥ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®)À» Æ÷ÇÔÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¿øÀÎ ±â´ÉÀº ¸±¸®½º 1.4 ÀÇ ½Å±â´ÉÀÔ´Ï´Ù. À̰ÍÀº ¿øÀÎ ÀÚü°¡ ¿øÀÎÀ» º¸°ü À¯ÁöÇØ ¿¹¿ÜÀÇ ¿¬¼â¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ±â (À§ÇØ)¶§¹®¿¡, ¡¸Ã¼ÀÎ µÈ ¿¹¿Ü¡¹±â´ÉÀ̶ó°íµµ ºÒ¸³´Ï´Ù.

½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ ¿øÀÎÀ» º¸°ü À¯ÁöÇÒ ¼ö ÀÖ´Â 1 °³ÀÇ ÀÌÀ¯·Î¼­ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ½½·Î¿ì Çϴ Ŭ·¡½º°¡ ÇÏÀ§ ·¹À̾î Ãß»óÈ­ À§¿¡ ±¸ÃàµÇ°í ÀÖ´Â °ÍÀÌ µé°í ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, »óÀ§ ·¹À̾ ´ëÇÑ Á¶ÀÛÀÌ ½ÇÆÐÇÏ´Â °ÍÀº ÇÏÀ§ ·¹À̾¼­ÀÇ Á¶ÀÛÀÌ ½ÇÆÐÇϱâ (À§ÇØ)¶§¹®¿¡ÀÔ´Ï´Ù. ÇÏÀ§ ·¹À̾ ÀÇÇØ ½½·Î¿ì µÇ´Â ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ¿ÜºÎ¿¡ ¼Û½ÅÇÏ´Â °ÍÀº ºÎÀûÀýÇÑ ¼³°è ¹æ¹ýÀÔ´Ï´Ù. À̰ÍÀº Åë»ó, »óÀ§ ·¹À̾ ÀÇÇØ Á¦°øµÇ´Â Ãß»óÈ­ ±â´É°ú´Â °ü°è°¡ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. °Ô´Ù°¡ ÀÌ·¯ÇÑ Á¶ÀÛÀ» ½Ç½ÃÇϸé, »óÀ§ ·¹À̾îÀÇ API ¸¦ ±¸ÇöÀÇ »ó¼¼ÇÏ°Ô ¿¬°á½ÃÄÑ ¹ö¸®±â (À§ÇØ)¶§¹®¿¡, ÇÏÀ§ ·¹À̾îÀÇ ¿¹¿Ü°¡ üũ ¿¹¿Ü¶ó°í º¸¿©Á® ¹ö¸³´Ï´Ù. ¡¸·¦ µÈ ¿¹¿Ü¡¹ (¿øÀÎÀ» Æ÷ÇÔÇÑ ¿¹¿Ü)À» ½½·Î¿ì Çϸé(ÀÚ), ÀÌ·¯ÇÑ °áÁ¡¿¡ Á¢ÇÏÁö ¾Ê°í »óÀ§ ·¹À̾ ÀåÇØÀÇ »ó¼¼¸¦ È£ÃâÇØ Ãø¿¡ Åë½ÅÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ÀÌ ¶§¹®¿¡, »óÀ§ ·¹À̾îÀÇ ±¸Çö (ƯÈ÷ ¸Þ¼Òµå¿¡ ÀÇÇØ ½½·Î¿ì µÇ´Â ¿¹¿Ü¼¼Æ®)À» API ¸¦ º¯°æÇÏÁö ¾Ê°í À¯¿¬ÇÏ°Ô º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ ¿øÀÎÀ» º¸°ü À¯ÁöÇÏ´Â 2 ¹øÂ°ÀÇ ÀÌÀ¯´Â ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ½½·Î¿ì ÇÏ´Â ¸Þ¼Òµå°¡, ¿øÀÎÀ» Á÷Á¢ ½½·Î¿ì ÇÏ´Â °ÍÀ» ¸Þ¼Òµå¿¡ Çã°¡ÇÏÁö ¾Ê´Â ¹ü¿ë ÀÎÅÍÆäÀ̽º¿¡ ÁذÅÇÒ Çʿ䰡 ÀÖ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, Áö¼Ó ÄÝ·º¼ÇÀÌ Collection ÀÎÅÍÆäÀ̽º¿¡ ÁذÅÇØ, ±× Áö¼Ó¼ºÀÌ java.io ÀÇ »óÀ§¿¡ ±¸ÇöµÇ´Â °æ¿ì¸¦ »ý°¢ÇսôÙ. put ¸Þ¼ÒµåÀÇ ³»ºÎ´Â IOException ¸¦ ½½·Î¿ì °¡´ÉÇÏ´Ù¶ó°í ÇÕ´Ï´Ù. ÀÌ °æ¿ì, ÀûÀýÇÑ Ã¼Å©µÇÁö ¾Ê´Â ¿¹¿ÜÀÇ IOException ¸¦ ·¦ ÇÏ´Â °ÍÀ¸·Î½á, ±¸ÇöÀº Collection ÀÎÅÍÆäÀ̽º¿¡ ÁذÅÇϸ鼭,IOException ÀÇ »ó¼¼¸¦ È£ÃâÇØ Ãø¿¡ ÅëÁöÇÒ ¼ö ÀÖ½À´Ï´Ù. Áö¼Ó ÄÝ·º¼ÇÀÇ »ç¾ç¿¡, ÀÌ·± Á¾·ùÀÇ ¿¹¿Ü¸¦ ½½·Î¿ì °¡´ÉÇÏ´Ù¶ó°í ÇÏ´Â °ÍÀÌ ³ªÅ¸³ª°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù.

¿øÀÎÀº 2 °³ÀÇ ¹æ¹ýÀ¸·Î ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ °ü·ÃÁöÀ» ¼ö°¡ ÀÖ½À´Ï´Ù. 1 krÀº ¿øÀÎÀ» Àμö·Î¼­ ÃëÇÏ´Â constructor¸¦ »ç¿ëÇÏ´Â ¹æ¹ý, ÀÌÁ¦(¹ú½á) 1 krÀº initCause(Throwable) ¸Þ¼Òµå¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. ¿øÀÎÀÌ °ü·ÃÁþ°í¸¦ °¡´ÉÇÏ°Ô ÇÏ´Â ½Å±Ô ½½·Î¿ì °¡´É Ŭ·¡½º´Â ¿øÀÎÀ» ¹Þ´Â constructor¸¦ Á¦°øÇØ, ¿øÀÎÀ» ¹Þ´Â ¸î°³ÀÇ Throwable constructor ¿¡ (Åë»ó °£Á¢ÀûÀ¸·Î) delegate ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ´ÙÀ½¿¡ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù.

     try {
         lowLevelOp();
     } catch LowLevelException(le) {
         throw new HighLevelException(le);  // Chaining-aware constructor
     }
 
initCause ¸Þ¼Òµå´Â public À̱â (À§ÇØ)¶§¹®¿¡, ¿øÀÎÀ» ÀÓÀÇÀÇ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ °ü·ÃÁþ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. À̰ÍÀº ±¸ÇöÀÌ ¿¹¿Ü üÀÎ ±â±¸ÀÇ Throwable ¿¡ÀÇ Ãß°¡¿¡ ¼±ÇàÇÏ´Â ¡¸À¯»ê ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¡¹¿©µµ µé¾î¸ÂÀ¾´Ï´Ù. ´ÙÀ½¿¡ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù.
     try {
         lowLevelOp();
     } catch LowLevelException(le) {
         throw (HighLevelException)
                  new HighLevelException(). initCause(le);  // Legacy constructor
     }
 

¸±¸®½º 1.4 ÀÌÀü¿¡´Â ºñÇ¥ÁØÀÇ µ¶ÀÚ ¿¹¿Ü üÀÎ ±â±¸ (ExceptionInInitializerError ,ClassNotFoundException ,UndeclaredThrowableException ,InvocationTargetException ,WriteAbortedException ,PrivilegedActionException ,PrinterIOException , ¹× RemoteException )¸¦ º¸°ü À¯ÁöÇÏ´Â ´Ù¼öÀÇ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ Á¸ÀçÇϰí ÀÖ¾ú½À´Ï´Ù. ¸±¸®½º 1.4 ¿¡¼­´Â ÀÌ·¯ÇÑ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®´Â ¸ðµÎ, ȣȯ¼ºÀ» À§Çؼ­(¶§¹®¿¡) ¡¸Á¾·¡ÀÇ¡¹¿¬¼â ±â±¸ÀÇ ±¸ÇöÀ» À¯ÁöÇϸ鼭, Ç¥ÁØÀÇ ¿¹¿Ü ¿¬¼â ±â±¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô °³·®µÇ°í ÀÖ½À´Ï´Ù.

°Ô´Ù°¡ ¸±¸®½º 1.4 ¿¡¼­´Â ´Ù¼öÀÇ ¹ü¿ë Throwable Ŭ·¡½º (Exception ,RuntimeException ,Error µî)°¡, ¿øÀÎÀ» ÃëÇÏ´Â constructor ¿¡ ¸ÂÃß¾î °³·®µÇ°í ÀÖ½À´Ï´Ù. initCause ¸Þ¼Òµå°¡ ¹ú½á Á¸ÀçÇϰí ÀÖ±â (À§ÇØ)¶§¹®¿¡, À̰ÍÀº ¾ö¹ÐÇϰԴ Çʼö¶ó°í ÇÏ´Â °ÍÀº ¾Æ´Õ´Ï´Ù¸¸, ¿øÀÎÀ» ÃëÇÏ´Â constructor ¿¡ÀÇ delegateÀ» ½Ç½ÃÇÏ´Â °Íº¸´Ù °£ÆíÇϰí Ç¥Çö·ÂÀÌ ÀÖ´Â ¹æ¹ýÀÔ´Ï´Ù.

Á¾·¡,Throwable Ŭ·¡½º ¹× ±× ¼­ºê Ŭ·¡½º´Â 2 °³ÀÇ constructor¸¦ º¸°ü À¯ÁöÇÕ´Ï´Ù. 1 krÀº Àμö¸¦ ÃëÇÏÁö ¾Ê°í ÀÌÁ¦(¹ú½á) 1 krÀº »ó¼¼ ¸Þ¼¼ÁöÀÇ »ý¼º¿¡ »ç¿ë °¡´ÉÇÑ String Àμö¸¦ ÃëÇÕ´Ï´Ù. ¶Ç, °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø ¿øÀÎÀ» º¸°ü À¯Áö °¡´ÉÇÑ ÀÌ·¯ÇÑ ¼­ºê Ŭ·¡½º´Â °Ô´Ù°¡ 2 °³ÀÇ constructor¸¦ º¸°ü À¯ÁöÇÕ´Ï´Ù. 1 krÀº Throwable (¿øÀÎ)¸¦ ÃëÇØ, ÀÌÁ¦(¹ú½á) 1 krÀº String (»ó¼¼ ¸Þ¼¼Áö) ¹× Throwable (¿øÀÎ)¸¦ ÃëÇÕ´Ï´Ù.

¶Ç, ¸±¸®½º 1.4 ¿¡¼­´Â getStackTrace() ¸Þ¼Òµåµµ µµÀԵǾú½À´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇϸé(ÀÚ), Áö±Ý±îÁö printStackTrace() ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÅØ½ºÆ® Çü½Ä¿¡¼­ ¹Û¿¡ ÀÌ¿ëÇÒ ¼ö ¾ø¾ú´ø ½ºÅà Ʈ·¹À̽º Á¤º¸¿¡, ÇÁ·Î±×·¥È­ µÈ ¾×¼¼½º¸¦ ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ Á¤º¸°¡ ÀÌ Å¬·¡½ºÀÇ ¡¸Á÷·ÄÈ­ Ç¥Çö¡¹¿¡ Ãß°¡µÇ¾ú±â ¶§¹®¿¡,getStackTrace ¹× printStackTrace °¡ Á÷·ÄÈ­ º¹¿ø¿¡ ÀÇÇØ ÃëµæµÈ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ ´ëÇØ¼­ ÀûÁ¤ÇÏ°Ô ±â´ÉÇÕ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 0
°ü·Ã Ç׸ñ:
Á÷·ÄÈ­ µÈ Çü½Ä

»ý¼ºÀÚÀÇ °³¿ä
Throwable ()
          »ó¼¼ ¸Þ¼¼Áö¿¡ null ¸¦ »ç¿ëÇØ, ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù.
Throwable (String  message)
          ÁöÁ¤µÈ »ó¼¼ ¸Þ¼¼Áö¸¦ »ç¿ëÇØ, ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù.
Throwable (String  message, Throwable  cause)
          ÁöÁ¤µÈ »ó¼¼ ¸Þ¼¼Áö ¹× ¿øÀÎÀ» »ç¿ëÇØ ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù.
Throwable (Throwable  cause)
          (cause==null ?
 
¸Þ¼ÒµåÀÇ °³¿ä
 Throwable fillInStackTrace ()
          ½ÇÇà ½ºÅà Ʈ·¹À̽º¸¦ ¹¯½À´Ï´Ù.
 Throwable getCause ()
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¿øÀÎ ¶Ç´Â null (¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÇ °æ¿ì)¸¦ µ¹·ÁÁÝ´Ï´Ù.
 String getLocalizedMessage ()
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ, Áö¿ª ´ëÀÀµÈ ±â¼úÀ» ÀÛ¼ºÇÕ´Ï´Ù.
 String getMessage ()
          ÀÌ Throwable ¿ÀºêÁ§Æ®ÀÇ »ó¼¼ ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù.
 StackTraceElement [] getStackTrace ()
          printStackTrace() ¿¡ ÀÇÇØ Ãâ·ÂµÈ ½ºÅà Ʈ·¹À̽º Á¤º¸¿¡ÀÇ, ÇÁ·Î±×·¥È­ µÈ ¾×¼¼½º¸¦ Á¦°øÇÕ´Ï´Ù.
 Throwable initCause (Throwable  cause)
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¡¸¿øÀΡ¹À», ÁöÁ¤µÈ °ª¿¡ ÃʱâÈ­ÇÕ´Ï´Ù.
 void printStackTrace ()
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ® ¹× ±× ¹é Æ®·¹À̽º¸¦ Ç¥ÁØ ¿¡·¯ ½ºÆ®¸²¿¡ Ãâ·ÂÇÕ´Ï´Ù.
 void printStackTrace (PrintStream  s)
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿Í ±× ¹é Æ®·¹À̽º°¡ ÁöÁ¤µÈ Àμ⠽ºÆ®¸²¿¡ Ãâ·ÂÇÕ´Ï´Ù.
 void printStackTrace (PrintWriter  s)
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿Í ±× ¹é Æ®·¹À̽º°¡ ÁöÁ¤µÈ ÇÁ¸°Æ® ¶óÀÌÅÍ¿¡ Ãâ·ÂÇÕ´Ï´Ù.
 void setStackTrace (StackTraceElement [] stackTrace)
          getStackTrace() ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁ®printStackTrace() ¹× °ü·ÃÇÏ´Â ¸Þ¼Òµå¿¡ ÀÇÇØ Ãâ·ÂµÇ´Â ½ºÅà Ʈ·¹À̽º ¿ä¼Ò¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 String toString ()
          ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ÂªÀº ±â¼úÀ» µ¹·ÁÁÝ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

»ý¼ºÀÚÀÇ »ó¼¼

Throwable

public Throwable()
»ó¼¼ ¸Þ¼¼Áö¿¡ null ¸¦ »ç¿ëÇØ, ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù. ¿øÀÎÀº ÃʱâÈ­µÇÁö ¾Ê°í ±× ÈÄ initCause(java.lang.Throwable) ¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

fillInStackTrace() ¸Þ¼Òµå¸¦ È£ÃâÇØ, ½Å±Ô ÀÛ¼ºµÈ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®³»ÀÇ ½ºÅà Ʈ·¹À̽º µ¥ÀÌÅ͸¦ ÃʱâÈ­ÇÕ´Ï´Ù.


Throwable

public Throwable(String  message)
ÁöÁ¤µÈ »ó¼¼ ¸Þ¼¼Áö¸¦ »ç¿ëÇØ, ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù. ¿øÀÎÀº ÃʱâÈ­µÇÁö ¾Ê°í ±× ÈÄ initCause(java.lang.Throwable) ¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÃʱâÈ­ÇÒ ¼ö ÀÖ½À´Ï´Ù.

fillInStackTrace() ¸Þ¼Òµå¸¦ È£ÃâÇØ, ½Å±Ô ÀÛ¼ºµÈ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®³»ÀÇ ½ºÅà Ʈ·¹À̽º µ¥ÀÌÅ͸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
message - »ó¼¼ ¸Þ¼¼Áö. »ó¼¼ ¸Þ¼¼Áö´Â getMessage() ¸Þ¼Òµå¿¡ ÀÇÇÑ Ãëµæ¿ëÀ¸·Î º¸Á¸µÈ´Ù

Throwable

public Throwable(String  message,
                 Throwable  cause)
ÁöÁ¤µÈ »ó¼¼ ¸Þ¼¼Áö ¹× ¿øÀÎÀ» »ç¿ëÇØ ½Å±Ô ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ±¸ÃàÇÕ´Ï´Ù.

cause ¿Í °ü·ÃÁöÀ» ¼ö ÀÖ¾ú´ø »ó¼¼ ¸Þ¼¼Áö°¡, ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ »ó¼¼ ¸Þ¼¼Áö¿¡ ÀÚµ¿ÀûÀ¸·Î ÅëÇÕµÉ °ÍÀº ¾ø½À´Ï´Ù.

fillInStackTrace() ¸Þ¼Òµå¸¦ È£ÃâÇØ, ½Å±Ô ÀÛ¼ºµÈ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®³»ÀÇ ½ºÅà Ʈ·¹À̽º µ¥ÀÌÅ͸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
message - »ó¼¼ ¸Þ¼¼Áö (getMessage() ¸Þ¼Òµå¿¡ ÀÇÇÑ Ãëµæ¿ëÀ¸·Î º¸Á¸µÈ´Ù)
cause - ¿øÀÎ (getCause() ¸Þ¼Òµå¿¡ ÀÇÇÑ Ãëµæ¿ëÀ¸·Î º¸Á¸µÈ´Ù). null Ä¡°¡ Çã°¡µÈ´Ù. null Ä¡´Â ¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÎ °ÍÀ» ³ªÅ¸³»´Â
µµÀÔµÈ ¹öÁ¯:
1.4

Throwable

public Throwable(Throwable  cause)
(cause==null ? null : cause.toString()) ÀÇ ÁöÁ¤µÈ ¿øÀÎ ¹× »ó¼¼ ¸Þ¼¼Áö¸¦ »ç¿ëÇØ ½Å±Ô ¿¹¿Ü¸¦ ±¸ÃàÇÕ´Ï´Ù. Åë»ó,(cause==null ? null : cause.toString()) ¿¡´Â cause ÀÇ Å¬·¡½º ¹× »ó¼¼ ¸Þ¼¼Áö°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ constructor Àº ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ ´Ù¸¥ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ® (PrivilegedActionException µî)ÀÇ ·¡ÆÛÀÎ °æ¿ì¿¡ À¯¿ëÇÕ´Ï´Ù.

fillInStackTrace() ¸Þ¼Òµå¸¦ È£ÃâÇØ, ½Å±Ô ÀÛ¼ºµÈ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®³»ÀÇ ½ºÅà Ʈ·¹À̽º µ¥ÀÌÅ͸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
cause - ¿øÀÎ (getCause() ¸Þ¼Òµå¿¡ ÀÇÇÑ Ãëµæ¿ëÀ¸·Î º¸Á¸µÈ´Ù). null Ä¡°¡ Çã°¡µÈ´Ù. null Ä¡´Â ¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÎ °ÍÀ» ³ªÅ¸³»´Â
µµÀÔµÈ ¹öÁ¯:
1.4
¸Þ¼ÒµåÀÇ »ó¼¼

getMessage

public String  getMessage()
ÀÌ Throwable ¿ÀºêÁ§Æ®ÀÇ »ó¼¼ ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Throwable ÀνºÅϽºÀÇ »ó¼¼ ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀÎ (null µµ °¡´É)

getLocalizedMessage

public String  getLocalizedMessage()
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ, Áö¿ª ´ëÀÀµÈ ±â¼úÀ» ÀÛ¼ºÇÕ´Ï´Ù. ¼­ºê Ŭ·¡½º´Â ÀÌ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇØ, ·ÎÄÉÀÏ¿¡ °íÀ¯ÀÇ ¸Þ¼¼Áö¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇÏÁö ¾Ê´Â ¼­ºê Ŭ·¡½ºÀÇ °æ¿ì´Â µðÆúÆ®ÀÇ ±¸Çö¿¡ ÀÇÇØ getMessage() ¿Í °°Àº °á°ú°¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ, Áö¿ª ´ëÀÀµÈ ±â¼ú
µµÀÔµÈ ¹öÁ¯:
JDK1. 1

getCause

public Throwable  getCause()
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¿øÀÎ ¶Ç´Â null (¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÇ °æ¿ì)¸¦ µ¹·ÁÁÝ´Ï´Ù. ¿øÀÎÀ̶õ, ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ½½·Î¿ì¸¦ ¹ß»ý½ÃŲ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÔ´Ï´Ù.

ÀÌ ±¸ÇöÀº Throwable ¸¦ ¿ä±¸ÇÏ´Â ¸î°³ÀÇ constructor °æÀ¯·Î Á¦°øµÈ ¿øÀÎ, ¶Ç´Â initCause(Throwable) ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÛ¼º ÈÄ·Î ¼³Á¤µÈ ¿øÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. Åë»ó, ÀÌ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù¸¸, ¼­ºê Ŭ·¡½º´Â ÀÌ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇØ, ´Ù¸¥ ¾î¶°ÇÑ ¹æ¹ýÀ¸·Î ¼³Á¤µÈ ¿øÀÎÀ» µ¹·ÁÁÙ ¼ö°¡ ÀÖ½À´Ï´Ù. À̰ÍÀº üÀÎ µÈ ¿¹¿ÜÀÇ Throwable ¿¡ÀÇ Ãß°¡Àü¿¡ ½ÇÇàµÇ´Â ¡¸À¯»ê ¿¬¼â ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¡¹ÀÇ °æ¿ì¿¡ ÀûÀýÇÑ µ¿ÀÛÀÔ´Ï´Ù. PrintStackTrace ¸Þ¼ÒµåÀÇ ¾î´ÀÂÊÀ̵çÀ» ¿À¹ö¶óÀ̵å(override) ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ÀÌ·¯ÇÑ ¸Þ¼Òµå´Â ¸ðµÎ getCause ¸Þ¼Òµå¸¦ È£ÃâÇØ, ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¿øÀÎÀ» ÆÇº°ÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¿øÀÎ ¶Ç´Â null (¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÇ °æ¿ì)
µµÀÔµÈ ¹öÁ¯:
1.4

initCause

public Throwable  initCause(Throwable  cause)
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¡¸¿øÀΡ¹À», ÁöÁ¤µÈ °ª¿¡ ÃʱâÈ­ÇÕ´Ï´Ù. ¿øÀÎÀ̶õ, ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ½½·Î¿ì¸¦ ¹ß»ý½ÃŲ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÔ´Ï´Ù.

ÀÌ ¸Þ¼Òµå´Â 1 ȸ¸¸ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. Åë»ó, ÀÌ ¸Þ¼Òµå´Â constructor ³»ºÎ·ÎºÎÅÍ ºÒ·Á °¡´ÂÁö ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ÀÛ¼º ÈÄ °ð¹Ù·Î ºÒ·Á °©´Ï´Ù. Throwable(Throwable) ¶Ç´Â Throwable(String, Throwable) ¸¦ »ç¿ëÇØ ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¸¦ ÀÛ¼ºÇßÀ» °æ¿ì, ÀÌ ¸Þ¼Òµå¸¦ Çѹøµµ È£ÃâÇÒ ¼ö ¾ø½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
cause - ¿øÀÎ (getCause() ¸Þ¼Òµå¿¡ ÀÇÇÑ Ãëµæ¿ëÀ¸·Î º¸Á¸µÈ´Ù). null Ä¡°¡ Çã°¡µÈ´Ù. null Ä¡´Â ¿øÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Â°¡ ¹ÌÁöÀÎ °ÍÀ» ³ªÅ¸³½´Ù
¹Ýȯ°ª:
ÀÌ Throwable ÀνºÅϽº¿¡ÀÇ ÂüÁ¶
¿¹¿Ü:
IllegalArgumentException - cause °¡ ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÎ °æ¿ì (½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®´Â ½º½º·ÎÀÇ ¿øÀÎÀÌ µÇ´Â °ÍÀº ÇÒ ¼ö ¾ø´Ù)
IllegalStateException - ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ Throwable(Throwable) ¶Ç´Â Throwable(String, Throwable) ¸¦ »ç¿ëÇØ ÀÛ¼ºµÇ¾ú´ÂÁö ÀÌ ¸Þ¼Òµå°¡ ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ ´ëÇØ¼­ È£ÃâÀ» ½ÇÇàÀÌ ³¡³­ »óÅÂÀÎ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

toString

public String  toString()
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ÂªÀº ±â¼úÀ» µ¹·ÁÁÝ´Ï´Ù. ÀÌ Throwable ¿ÀºêÁ§Æ®°¡ ºñ null ÀÇ »ó¼¼ ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀÎÀ» »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì, °á°ú´Â ´ÙÀ½ÀÇ 3 °³ÀÇ Ä³¸¯ÅÍ ¶óÀÎÀ» ¿¬°áÇÑ °ÍÀÌ µË´Ï´Ù. ÀÌ Throwable ¿ÀºêÁ§Æ®°¡ null ÀÇ »ó¼¼ ¸Þ¼¼Áö ij¸¯ÅÍ ¶óÀÎÀ» »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì´Â ÀÌ ¿ÀºêÁ§Æ®ÀÇ ½ÇÁ¦ÀÇ Å¬·¡½º¸íÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ Ä³¸¯ÅÍ ¶óÀΠǥÇö

printStackTrace

public void printStackTrace()
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ® ¹× ±× ¹é Æ®·¹À̽º¸¦ Ç¥ÁØ ¿¡·¯ ½ºÆ®¸²¿¡ Ãâ·ÂÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÀÌ Throwable ¿ÀºêÁ§Æ®ÀÇ ½ºÅà Ʈ·¹À̽º¸¦,System.err ÇʵåÀÇ °ªÀÎ ¿¡·¯ Ãâ·Â ½ºÆ®¸²À¸·Î Ãâ·ÂÇÕ´Ï´Ù. Ãâ·ÂÀÇ ¼±µÎÇà¿¡´Â ÀÌ ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ toString() ¸Þ¼ÒµåÀÇ °á°ú°¡ Æ÷ÇԵ˴ϴÙ. ³ª¸ÓÁöÀÇ ÇàÀº ÀÌÀü¿¡ fillInStackTrace() ¸Þ¼Òµå¿¡ ÀÇÇØ ±â·ÏµÈ µ¥ÀÌÅ͸¦ ³ªÅ¸³À´Ï´Ù. ÀÌ Á¤º¸ÀÇ ¼­½ÄÀº ±¸Çö¿¡ ÀÇÇØ ´Ù¼Ò ´Ù¸¨´Ï´Ù¸¸, ÀüÇüÀûÀÎ ¼­½ÄÀÇ ¿¹¸¦ ´ÙÀ½¿¡ ³ªÅ¸³À´Ï´Ù.
 java.lang.NullPointerException
         at MyClass.mash(MyClass.java:9)
         at MyClass.crunch(MyClass.java:6)
         at MyClass.main(MyClass.java:3)
 
ÀÌ ¿¹´Â ´ÙÀ½ÀÇ ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â °Í¿¡ ÀÇÇØ ÀÛ¼ºµÈ °ÍÀÔ´Ï´Ù.
 class MyClass {
     public static void main(String[] args) {
         crunch(null);
     }
     static void crunch(int[] a) {
         mash(a);
     }
     static void mash(int[] b) {
         System.out.println(b[0]);
     }
 }
 
ÃʱâÈ­µÈ ºñ null ÀÇ ¿øÀÎÀ» º¸°ü À¯ÁöÇÏ´Â ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ¹é Æ®·¹À̽º¿¡´Â Åë»ó, ¿øÀÎÀÇ ¹é Æ®·¹À̽º°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ Á¤º¸ÀÇ ¼­½ÄÀº ±¸Çö¿¡ µû¶ó¼­ ´Ù¸¨´Ï´Ù¸¸, ÀüÇüÀûÀÎ ¼­½ÄÀÇ ¿¹¸¦ ´ÙÀ½¿¡ ³ªÅ¸³À´Ï´Ù.
 HighLevelException: MidLevelException: LowLevelException
         at Junk.a(Junk.java:13)
         at Junk.main(Junk.java:4)
 Caused by: MidLevelException: LowLevelException
         at Junk.c(Junk.java:23)
         at Junk.b(Junk.java:17)
         at Junk.a(Junk.java:11)
         ... 1 more
 Caused by: LowLevelException
         at Junk.e(Junk.java:30)
         at Junk.d(Junk.java:27)
         at Junk.c(Junk.java:21)
         ... 3 more
 
ij¸¯ÅÍ "..." (À»)¸¦ Æ÷ÇÔÇÑ ÇàÀÌ Á¸ÀçÇÏ´Â °Í¿¡ ÁÖ¸ñÇØ ÁÖ¼¼¿ä. ÀÌ·¯ÇÑ ÇàÀº ÀÌ ¿¹¿ÜÀÇ ½ºÅà Ʈ·¹À̽ºÀÇ ³ª¸ÓÁö°¡, ÀÌ ¿¹¿Ü¿¡ ÀÇÇØ ÀÏÀ¸ÄÑÁø ¿¹¿ÜÀÇ ½ºÅà Ʈ·¹À̽º¾Æ·¡·ÎºÎÅÍÀÇ ÇÁ·¹ÀÓ¼ö·Î ÀÏÄ¡ÇÏ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. Åë»óÀÇ ( ¡¸¿øÀÎÀÌ µÇ´Â ¿¹¿Ü¡¹¸¦ ijġ ÇÏ´Â °Í°ú °°Àº ¸Þ¼Òµå·ÎºÎÅÍ ·¦ µÈ ¿¹¿Ü°¡ ½½·Î¿ì µÈ´Ù) °æ¿ì, ÀÌ ´ÜÃàÇüÀ» »ç¿ëÇÏ´Â °ÍÀ¸·Î, Ãâ·ÂÀÇ ±æÀ̸¦ Å«ÆøÀ¸·Î ´ÜÃàÇÒ ¼ö ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹´Â ´ÙÀ½ÀÇ ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â °ÍÀ¸·Î »ý¼ºµË´Ï´Ù.
 public class Junk {
     public static void main(String args[]) { 
         try {
             a();
         } catch(HighLevelException e) {
             e.printStackTrace();
         }
     }
     static void a() throws HighLevelException {
         try {
             b();
         } catch(MidLevelException e) {
             throw new HighLevelException(e);
         }
     }
     static void b() throws MidLevelException {
         c();
     }   
     static void c() throws MidLevelException {
         try {
             d();
         } catch(LowLevelException e) {
             throw new MidLevelException(e);
         }
     }
     static void d() throws LowLevelException { 
        e();
     }
     static void e() throws LowLevelException {
         throw new LowLevelException();
     }
 }

 class HighLevelException extends Exception {
     HighLevelException(Throwable cause) { super(cause); }
 }

 class MidLevelException extends Exception {
     MidLevelException(Throwable cause)  { super(cause); }
 }
 
 class LowLevelException extends Exception {
 }
 


printStackTrace

public void printStackTrace(PrintStream  s)
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿Í ±× ¹é Æ®·¹À̽º°¡ ÁöÁ¤µÈ Àμ⠽ºÆ®¸²¿¡ Ãâ·ÂÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
s - Ãâ·Â¿¡ »ç¿ëÇÏ´Â PrintStream

printStackTrace

public void printStackTrace(PrintWriter  s)
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿Í ±× ¹é Æ®·¹À̽º°¡ ÁöÁ¤µÈ ÇÁ¸°Æ® ¶óÀÌÅÍ¿¡ Ãâ·ÂÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
s - Ãâ·Â¿¡ »ç¿ëÇÏ´Â PrintWriter
µµÀÔµÈ ¹öÁ¯:
JDK1. 1

fillInStackTrace

public Throwable  fillInStackTrace()
½ÇÇà ½ºÅà Ʈ·¹À̽º¸¦ ¹¯½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÇöÇà threadÀÇ ½ºÅà ÇÁ·¹ÀÓÀÇ ÇöÀç »óÅ¿¡ °üÇÑ Á¤º¸¸¦, ÀÌ Throwable ¿ÀºêÁ§Æ®³»¿¡ ±â·ÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Throwable ÀνºÅϽº¿¡ÀÇ ÂüÁ¶
°ü·Ã Ç׸ñ:
printStackTrace()

getStackTrace

public StackTraceElement [] getStackTrace()
printStackTrace() ¿¡ ÀÇÇØ Ãâ·ÂµÈ ½ºÅà Ʈ·¹À̽º Á¤º¸¿¡ÀÇ, ÇÁ·Î±×·¥È­ µÈ ¾×¼¼½º¸¦ Á¦°øÇÕ´Ï´Ù. ½ºÅà Ʈ·¹À̽º ¿ä¼Ò ( °¢ ¿ä¼Ò´Â 1 °³ÀÇ ½ºÅà ÇÁ·¹ÀÓÀ» ³ªÅ¸³½´Ù)ÀÇ ¹è¿­À» µ¹·ÁÁÝ´Ï´Ù. ¹è¿­ÀÇ Á¦·Î ¹øÂ°ÀÇ ¿ä¼Ò (¹è¿­ÀÇ ±æÀ̰¡ Á¦·Î°¡ ¾Æ´Ñ °æ¿ì)´Â ½ºÅÃÀÇ ¼±µÎ (ÀÏ·ÃÀÇ ¸Þ¼Òµå È£ÃâÀÇ ÃÖÈÄ)¸¦ ³ªÅ¸³À´Ï´Ù. Åë»ó, À̰ÍÀº ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ ÀÛ¼º ¹× ½½·Î¿ì µÈ Æ÷ÀÎÆ®ÀÔ´Ï´Ù. ¹è¿­ÀÇ ¸¶Áö¸· ¿ä¼Ò (¹è¿­ÀÇ ±æÀ̰¡ Á¦·Î°¡ ¾Æ´Ñ °æ¿ì)´Â ½ºÅÃÀÇ ¸»¹Ì (ÀÏ·ÃÀÇ ¸Þ¼Òµå È£ÃâÀÇ ÃÖÃÊ)¸¦ ³ªÅ¸³À´Ï´Ù.

°¡»ó ¸Ó½Å¾È¿¡´Â ƯÁ¤ÀÇ »óȲÇÏ·Î ½ºÅà Ʈ·¹À̽º·ÎºÎÅÍ 1 °³ ÀÌ»óÀÇ ½ºÅà ÇÁ·¹ÀÓÀ» »ý·« ÇÏ´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ±Ø´ÜÀûÀÎ °æ¿ì, ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ °üÇÑ ½ºÅà Ʈ·¹À̽º Á¤º¸¸¦ º¸°ü À¯ÁöÇÏÁö ¾Ê´Â °¡»ó ¸Ó½ÅÀÌ, ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ ±æÀÌ Á¦·ÎÀÇ ¹è¿­À» µ¹·ÁÁÖ´Â °ÍÀÌ Çã°¡µË´Ï´Ù. ÀϹÝÀûÀ¸·Î, ÀÌ ¸Þ¼Òµå¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁö´Â ¹è¿­Àº printStackTrace ¿¡ ÀÇÇØ Ãâ·ÂµÇ´Â ÇÁ·¹ÀÓ ¸¶´Ù 1 °³ÀÇ ¿ä¼Ò¸¦ ÀúÀåÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®¿¡ °üÇÑ ½ºÅà Ʈ·¹À̽º¸¦ ³ªÅ¸³»´Â ½ºÅà Ʈ·¹À̽º ¿ä¼ÒÀÇ ¹è¿­
µµÀÔµÈ ¹öÁ¯:
1.4

setStackTrace

public void setStackTrace(StackTraceElement [] stackTrace)
getStackTrace() ¿¡ ÀÇÇØ µ¹·ÁÁÖ¾îÁ®printStackTrace() ¹× °ü·ÃÇÏ´Â ¸Þ¼Òµå¿¡ ÀÇÇØ Ãâ·ÂµÇ´Â ½ºÅà Ʈ·¹À̽º ¿ä¼Ò¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â RPC üÁ¦ ¹× ´Ù¸¥ °í¼º´É ½Ã½ºÅÛ¿¡¼­ÀÇ »ç¿ëÀ» ¸ñÀûÀ¸·Î ¼³°èµÇ°í ÀÖ¾î Ŭ¶óÀÌ¾ðÆ®°¡ µðÆúÆ® ½ºÅà Ʈ·¹À̽º¸¦ ¿À¹ö¶óÀ̵å(override) ÇÏ´Â °ÍÀ» °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. µðÆúÆ® ½ºÅà Ʈ·¹À̽º´Â ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®ÀÇ ±¸Ãà½Ã¿¡ fillInStackTrace() ¿¡ ÀÇÇØ »ý¼ºµÇ´ÂÁö ½½·Î¿ì °¡´É ¿ÀºêÁ§Æ®°¡ Á÷·ÄÈ­ ½ºÆ®¸²À¸·ÎºÎÅÍ ÀоîµéÀÏ ¶§¿¡ Á÷·ÄÈ­ º¹¿øµË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
stackTrace - ÀÌ Throwable ¿Í °ü·ÃÁþ´Â ½ºÅà Ʈ·¹À̽º ¿ä¼Ò. ÁöÁ¤µÈ ¹è¿­Àº ÀÌ È£Ãâ¿¡ ÀÇÇØ Ä«ÇǵȴÙ. ¸Þ¼Òµå È£ÃâÀÇ º¹±Í ÈÄ¿¡, ÁöÁ¤µÈ ¹è¿­³»¿¡¼­ ÇàÇØÁø º¯°æÀº Throwable ÀÇ ½ºÅà Ʈ·¹À̽º¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù
¿¹¿Ü:
NullPointerException - stackTrace °¡ null ÀÇ °æ¿ì, ¶Ç´Â stackTrace ÀÇ ¸î°³ÀÇ ¿ä¼Ò°¡ null ÀÇ °æ¿ì
µµÀÔµÈ ¹öÁ¯:
1.4

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ À־ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.