JavaTM 2 Platform
Standard Ed. 5.0

java.util.concurrent
ÀÎÅÍÆäÀ̽º BlockingQueue<E>

ÇüÅ ÆĶó¹ÌÅÍ:
E - Ä÷º¼Ç³»¿¡ Á¸ÀçÇÏ´Â ¿ä¼ÒÀÇ ÇüÅÂ
¸ðµç ½´ÆÛ ÀÎÅÍÆäÀ̽º:
Collection <E>, Iterable <E>, Queue <E>
¾Ë·ÁÁø ±¸Çö Ŭ·¡½º ¸ñ·Ï:
ArrayBlockingQueue, DelayQueue, LinkedBlockingQueue, PriorityBlockingQueue, SynchronousQueue

public interface BlockingQueue<E>
extends Queue <E>

¿ä¼ÒÀÇ Ãëµæ½Ã¿¡ Å¥°¡ ºô ¶§±îÁö ´ë±âÇϰųª ¿ä¼ÒÀÇ Æ÷ÇԽÿ¡ Å¥³»ÀÇ °ø°£ÀÌ ÀÌ¿ë °¡´ÉÇÏ°Ô µÉ ¶§±îÁö ´ë±âÇÏ´Â Á¶ÀÛÀ» Ãß°¡ Áö¿øÇÏ´Â Queue .

BlockingQueue´Â null ¿ä¼Ò¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê½À´Ï´Ù. null add, put, ¶Ç´Â offer°¡ ½ÃµµµÇ¸é, ±¸Çö¿¡ ÀÇÇØ NullPointerExceptionÀÌ ¹ß»ý µË´Ï´Ù. poll Á¶ÀÛÀÌ ½ÇÆÐÇÑ °ÍÀ» ³ªÅ¸³»´Â Ç¥Áö°ªÀ¸·Î null°¡ »ç¿ëµË´Ï´Ù.

BlockingQueue´Â ¿ë·®ÀÌ Á¦ÇѵǴ °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀÌ ¾ðÁ¨°¡´Â remainingCapacity¸¦ ÃÊ°úÇϸé, ºí·Ï¾øÀÌ Ãß°¡ ¿ä¼Ò¸¦ put ÇÒ ¼ö ¾ø°Ô µË´Ï´Ù. ºôÆ®ÀÎ ¿ë·® Á¦ÇѾøÀÌ BlockingQueue¸¦ »ç¿ëÇϸé, Integer.MAX_VALUE ³ª¸ÓÁöÀÇ ¿ë·®ÀÌ Ç×»ó ¸®Æ÷Æ®µË´Ï´Ù.

BlockingQuere ±¸ÇöÀº ÁÖ·Î ÇÁ·Îµà¼­¿Í ÄÁ½´¸Ó(consumer)ÀÇ »çÀÌÀÇ Å¥·Î »ç¿ëÇϵµ·Ï ¼³°èµÇ°í ÀÖ½À´Ï´Ù¸¸, Collection ÀÎÅÍÆäÀ̽ºµµ Ãß°¡ÀûÀ¸·Î Áö¿ø ÇÕ´Ï´Ù. µû¶ó¼­, ¿¹¸¦ µé¾î remove (x)¸¦ »ç¿ëÇØ Å¥·ÎºÎÅÍ ¿ä¼Ò¸¦ ÀÓÀÇ·Î »èÁ¦ÇÏ´Â °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. ±×·¯³ª, ÀÌ·¯ÇÑ Á¶ÀÛÀº ÀϹÝÀûÀ¸·Î ½ÇÇàÀÇ È¿À²ÀÌ ³ª»Ú±â ¶§¹®¿¡ Å¥³»ÀÇ ¸Þ¼¼ÁöÀÇ Ãë¼Ò µî ƯÁ¤ÀÇ ¿ëµµ°¡ ÀÖ´Â °æ¿ì¿¡°Ô¸¸ ½ÇÇàµË´Ï´Ù.

BlockingQueue ±¸ÇöÀº thread ¼¼ÀÌÇÁÀÔ´Ï´Ù. ¸ðµç Å¥À× ¸Þ¼­µå´Â ³»ºÎ ¶ô ¶Ç´Â ´Ù¸¥ º´·ÄÀûÀÎ Á¦¾î Çü½ÄÀ» »ç¿ëÇØ È¿°ú¸¦ ºÒ°¡ºÐ¿¡ ´Þ¼ºÇÕ´Ï´Ù. ±×·¯³ª, Ä÷º¼Ç Á¶ÀÛÀ» ¡¸ÀÏ°ý¡¹ÇÏ´Â addAll, containsAll, retainAll ¹× removeAll´Â ±¸Çö½Ã¿¡ ´Ù¸¥ ÁöÁ¤À̵Ǿî ÀÖÁö ¾ÊÀº ÇÑ, ºÒ°¡ºÐ¿¡ ½ÇÇàÇÒ ÇÊ¿ä´Â ¹Ýµå½Ã ¾ø½À´Ï´Ù. µû¶ó¼­, ¿¹¸¦ µé¾î, addAll (c)¿¡ ¼­´Â c¿¡ ´Ù¸¥ ¿ä¼ÒÀÇ ÀϺθ¸À» Ãß°¡ÇÑ ÈÄ¿¡ ¿¹¿Ü¸¦ ThrowÀÇÇØ ½ÇÆÐÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.

BlockingQueue´Â º»·¡, Ç׸ñÀÌ ´õ ÀÌ»ó Ãß°¡µÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³»´Â ¡¸Å¬·Î¿ìÁ¶Ç´Â ¡¸¼Ë´Ù¿î¡¹Á¶ÀÛÀ» ¾î¶°ÇÑ Á¾·ùµç Áö¿ø ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ·± Á¾·ùÀÇ ±â´ÉÀÇ ¿ä±¸³ª »ç¿ëÀº ±¸Çö¿¡ ÀÇÁ¸µÈ °æÇâÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ÇÁ·Îµà¼­·Î Ư¼öÇÑ end-of-stream ¶Ç´Â poison °´Ã¼¸¦ »ðÀÔÇØ, ÄÁ½´¸Ó(consumer)¿¡ ÇÑ Ãëµæ½Ã¿¡ À̰͵éÀÌ Àû´ç Çؼ®µÈ´Ù, ¶ó°í ÇÒ ¹æ¹ýÀÌ ÀϹÝÀûÀÔ´Ï´Ù.

´ÙÀ½¿¡ º¸Åë ÀÇ ÇÁ·Îµà¼­ - ÄÁ½´¸Ó(consumer) ½Ã³ª¸®¿À¿¡ ±Ù°ÅÇÏ´Â »ç¿ë¿¹¸¦ ³ªÅ¸³À´Ï´Ù. BlockingQueue Àº º¹¼öÀÇ ÇÁ·Îµà¼­ ¹× º¹¼öÀÇ ÄÁ½´¸Ó(consumer)·Î ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä.


 class Producer implements Runnable {
   private final BlockingQueue queue;
   Producer(BlockingQueue q) { queue = q; }
   public void run() {
     try {
       while(true) { queue.put(produce()); }
     } catch (InterruptedException ex) { ... handle ...}
   }
   Object produce() { ... }
 }

 class Consumer implements Runnable {
   private final BlockingQueue queue;
   Consumer(BlockingQueue q) { queue = q; }
   public void run() {
     try {
       while(true) { consume(queue.take()); }
     } catch (InterruptedException ex) { ... handle ...}
   }
   void consume(Object x) { ... }
 }

 class Setup {
   void main() {
     BlockingQueue q = new SomeQueueImplementation();
     Producer p = new Producer(q);
     Consumer c1 = new Consumer(q);
     Consumer c2 = new Consumer(q);
     new Thread(p). start();
     new Thread(c1). start();
     new Thread(c2). start();
   }
 }
 

ÀÌ ÀÎÅÍÆäÀ̽º´Â Java Collections Framework ¸â¹öÀÔ´Ï´Ù.

µµÀÔµÈ ¹öÀü :
1.5

¸Þ¼­µå °³¿ä
 boolean add (E  o)
          ÀÌ Å¥·Î ÁöÁ¤µÈ ¿ä¼Ò¸¦ Ãß°¡ÇÕ´Ï´Ù.
 int drainTo (Collection <? super E > c)
          ÀÌ¿ë °¡´ÉÇÑ ¸ðµç ¿ä¼Ò¸¦ ÀÌ Å¥·ÎºÎÅÍ »èÁ¦ÇØ, ÁöÁ¤µÈ Ä÷º¼Ç¿¡ Ãß°¡ÇÕ´Ï´Ù.
 int drainTo (Collection <? super E > c, int maxElements)
          ÁöÁ¤µÈ ¼öÀ̳»ÀÇ ÀÌ¿ë °¡´ÉÇÑ ¿ä¼Ò¸¦ ÀÌ Å¥·ÎºÎÅÍ »èÁ¦ÇØ, ÁöÁ¤µÈ Ä÷º¼Ç¿¡ Ãß°¡ÇÕ´Ï´Ù.
 boolean offer (E  o)
          °¡´ÉÇÑ °æ¿ì, ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ »ðÀÔÇÕ´Ï´Ù.
 boolean offer (E  o, long timeout, TimeUnit  unit)
          ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ »ðÀÔÇÕ´Ï´Ù.
 E poll (long timeout, TimeUnit  unit)
          ÀÌ Å¥ÀÇ ¼±µÎ¸¦ Ãëµæ ¹× »èÁ¦ÇÕ´Ï´Ù.
 void put (E  o)
          ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ Ãß°¡ÇÕ´Ï´Ù.
 int remainingCapacity ()
          ÀÌ Å¥°¡ ÀÌ»óÀûÀÎ »óÅ (¸Þ¸ð¸®³ª ÀÚ¿øÀÇ Á¦ÇÑÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù)·Î ºí·ÎÅ·¾øÀÌ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ´Â ¿ä¼ÒÀÇ ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 E take ()
          ÀÌ Å¥ÀÇ ¼±µÎ¸¦ Ãëµæ ¹× »èÁ¦ÇÕ´Ï´Ù.
 
ÀÎÅÍÆäÀ̽º java.util. Queue ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
element, peek, poll, remove
 
ÀÎÅÍÆäÀ̽º java.util. Collection ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

¸Þ¼­µåÀÇ »ó¼¼

offer

boolean offer(E  o)
°¡´ÉÇÑ °æ¿ì, ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ »ðÀÔÇÕ´Ï´Ù. ¿ë·® Á¦ÇѵîÀÇ »ðÀÔ Á¦ÇÑÀ» ºÎ°úÇϴ ť¸¦ »ç¿ëÇÏ´Â °æ¿ì, ¿¹¿Ü¸¦ Throw ÇÏ´Â °Í¸¸À¸·Î ¿ä¼ÒÀÇ »ðÀÔ¿¡ ½ÇÆÐÇÏ´Â Collection.add(E) ¸Þ¼­µåº¸´Ù offer ¸Þ¼­µå¸¦ »ç¿ëÇÏ´Â °ÍÀ» ÃßõÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Queue <E > ³»ÀÇ offer
ÆĶó¹ÌÅÍ:
o - Ãß°¡ÇÏ´Â ¿ä¼Ò
¹Ýȯ°ª:
¿ä¼Ò¸¦ ÀÌ Å¥¿¡ Ãß°¡ °¡´ÉÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
¿¹¿Ü:
NullPointerException - ÁöÁ¤µÈ ¿ä¼Ò°¡ null ÀÎ °æ¿ì

offer

boolean offer(E  o,
              long timeout,
              TimeUnit  unit)
              throws InterruptedException 
ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ »ðÀÔÇÕ´Ï´Ù. ÇÊ¿äÇÏ°Ô ÀÀÇØ °ø°£ÀÌ ÀÌ¿ë °¡´ÉÇÏ°Ô µÇ´Â °ÍÀ» ÁöÁ¤µÈ ½Ã°£±îÁö ´ë±âÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
o - Ãß°¡ÇÏ´Â ¿ä¼Ò
timeout - 󸮸¦ ÁßÁöÇÒ ¶§±îÁöÀÇ ´ë±â ½Ã°£. ´ÜÀ§´Â unit
unit - timeout ÆĶó¹ÌÅÍÀÇ Çؼ® ¹æ¹ýÀ» ÁöÁ¤ÇÏ´Â TimeUnit
¹Ýȯ°ª:
¼º°øÇßÀ» °æ¿ì´Â true, °ø°£ÀÌ ÀÌ¿ë °¡´ÉÇÏ°Ô µÇ±â ÀüÀ¸·Î ÁöÁ¤µÈ ´ë±â ½Ã°£ÀÌ °æ°úÇßÀ» °æ¿ì´Â false
¿¹¿Ü:
InterruptedException - ´ë±âÁß¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì
NullPointerException - ÁöÁ¤µÈ ¿ä¼Ò°¡ null ÀÎ °æ¿ì

poll

E  poll(long timeout,
       TimeUnit  unit)
       throws InterruptedException 
ÀÌ Å¥ÀÇ ¼±µÎ¸¦ Ãëµæ ¹× »èÁ¦ÇÕ´Ï´Ù. ÀÌ Å¥¿¡ ¿ä¼Ò°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â ÇÊ¿ä¿¡ µû¶ó¼­ ÁöÁ¤µÈ ½Ã°£¸¸ ´ë±âÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
timeout - 󸮸¦ ÁßÁöÇÒ ¶§±îÁöÀÇ ´ë±â ½Ã°£. ´ÜÀ§´Â unit
unit - timeout ÆĶó¹ÌÅÍÀÇ Çؼ® ¹æ¹ýÀ» ÁöÁ¤ÇÏ´Â TimeUnit
¹Ýȯ°ª:
ÀÌ Å¥ÀÇ ¼±µÎ. ÁöÁ¤µÈ ´ë±â ½Ã°£ÀÌ °æ°úÇصµ ¿ä¼Ò°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â null
¿¹¿Ü:
InterruptedException - ´ë±âÁß¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì

take

E  take()
       throws InterruptedException 
ÀÌ Å¥ÀÇ ¼±µÎ¸¦ Ãëµæ ¹× »èÁ¦ÇÕ´Ï´Ù. ÀÌ Å¥¿¡ ¿ä¼Ò°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â ´ë±âÇÕ´Ï´Ù.

¹Ýȯ°ª:
Å¥ÀÇ ¼±µÎ
¿¹¿Ü:
InterruptedException - ´ë±âÁß¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì

put

void put(E  o)
         throws InterruptedException 
ÁöÁ¤µÈ ¿ä¼Ò¸¦ ÀÌ Å¥¿¡ Ãß°¡ÇÕ´Ï´Ù. ÇÊ¿äÇÏ°Ô ÀÀÇØ °ø°£ÀÌ ÀÌ¿ë °¡´ÉÇÏ°Ô µÉ ¶§±îÁö ´ë±âÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
o - Ãß°¡ÇÏ´Â ¿ä¼Ò
¿¹¿Ü:
InterruptedException - ´ë±âÁß¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì
NullPointerException - ÁöÁ¤µÈ ¿ä¼Ò°¡ null ÀÎ °æ¿ì

remainingCapacity

int remainingCapacity()
ÀÌ Å¥°¡ ÀÌ»óÀûÀÎ »óÅ (¸Þ¸ð¸®³ª ÀÚ¿øÀÇ Á¦ÇÑÀÌ Á¸ÀçÇÏÁö ¾Ê´Â´Ù)·Î ºí·ÎÅ·¾øÀÌ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ´Â ¿ä¼ÒÀÇ ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù. ºôÆ®ÀÎ Á¦ÇÑÀÌ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â Integer.MAX_VALUE¸¦ ¸®ÅÏÇÕ´Ï´Ù.

remainingCapacity¸¦ È®ÀÎÇϸé, ¿ä¼ÒÀÇ add Á¶ÀÛÀÌ ¾ðÁ¦³ª ¼º°øÇÏ´Â °ÍÀº ¾Æ´Ñ °ÍÀ» ¾Ð´Ï´Ù. ÀÌ°ÍÀº ´Ù¸¥ thread°¡ ¿ä¼ÒÀÇ put ¶Ç´Â take Á¶ÀÛÀ» ½ÇÇàÇÏ·Á°í ÇÏ°í ÀÖ´Â °æ¿ì°¡ Àֱ⠶§¹®¿¡ÀÔ´Ï´Ù.

¹Ýȯ°ª:
³ª¸ÓÁöÀÇ ¿ë·®

add

boolean add(E  o)
ÀÌ Å¥·Î ÁöÁ¤µÈ ¿ä¼Ò¸¦ Ãß°¡ÇÕ´Ï´Ù. °¡´ÉÇϸé Áï¼®¿¡¼­ ½ÇÇàµË´Ï´Ù. ¼º°øÇßÀ» °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â IllegalStateException°¡ ¹ß»ý µË´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Collection <E > ³»ÀÇ add
ÆĶó¹ÌÅÍ:
o - ¿ä¼Ò
¹Ýȯ°ª:
true (Collection.add ÀÏ¹Ý ±Ô¾à¿¡ µû¸¥´Ù)
¿¹¿Ü:
NullPointerException - ÁöÁ¤µÈ ¿ä¼Ò°¡ null ÀÎ °æ¿ì
IllegalStateException - ¿ä¼Ò¸¦ Ãß°¡ÇÒ ¼ö ¾ø´Â °æ¿ì

drainTo

int drainTo(Collection <?  super E > c)
ÀÌ¿ë °¡´ÉÇÑ ¸ðµç ¿ä¼Ò¸¦ ÀÌ Å¥·ÎºÎÅÍ »èÁ¦ÇØ, ÁöÁ¤µÈ Ä÷º¼Ç¿¡ Ãß°¡ÇÕ´Ï´Ù. ÀÌ Á¶ÀÛÀº ÀÌ Å¥¸¦ ¹Ýº¹ÇØ Æú¸µ ÇÏ´Â °æ¿ìº¸´Ù È¿À²ÀûÀÎ °æ¿ì°¡ ÀÖ½À´Ï´Ù. Ä÷º¼Ç c¿¡ ¿ä¼ÒÀÇ add Á¶ÀÛÀ» ½ÃµµÇÒ ¶§¿¡ ÀåÇØ°¡ ¹ß»ýÇßÀ» °æ¿ì, °ü·ÃµÈ ¿¹¿ÜÀÇ Throw½Ã¿¡ ¿ä¼Ò°¡ Ä÷º¼ÇÀÇ ¾î´À °Í¿¡µµ Á¸ÀçÇÏÁö ¾Ê´ÂÁö, ÇÑÆí ¶Ç´Â ¾çÂÊ ¸ðµÎ¿¡ Á¸ÀçÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. Å¥¸¦ ÀÚ±â Àڽſ¡°Ô ¹èÃâÇÏ´Â °ÍÀ» ½ÃµµÇϸé, IllegalArgumentExceptionÀÌ ¹ß»ý µË´Ï´Ù. ¶Ç, ÀÌ Á¶ÀÛÀÇ ÁøÇàÁßÀ¸·Î ÁöÁ¤µÈ Ä÷º¼ÇÀÌ º¯°æµÇ¾úÀ» °æ¿ìÀÇ µ¿ÀÛÀº Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
c - ¿ä¼ÒÀÇ Àü¼ÛóÀÇ Ä÷º¼Ç
¹Ýȯ°ª:
Àü¼Û µÇ´Â ¿ä¼ÒÀÇ ¼ö
¿¹¿Ü:
NullPointerException - c°¡ nullÀÎ °æ¿ì
IllegalArgumentException - c°¡ ÀÌ Å¥ÀÎ °æ¿ì

drainTo

int drainTo(Collection <?  super E > c,
            int maxElements)
ÁöÁ¤µÈ ¼öÀ̳»ÀÇ ÀÌ¿ë °¡´ÉÇÑ ¿ä¼Ò¸¦ ÀÌ Å¥·ÎºÎÅÍ »èÁ¦ÇØ, ÁöÁ¤µÈ Ä÷º¼Ç¿¡ Ãß°¡ÇÕ´Ï´Ù. Ä÷º¼Ç c¿¡ ¿ä¼ÒÀÇ add Á¶ÀÛÀ» ½ÃµµÇÒ ¶§¿¡ ÀåÇØ°¡ ¹ß»ýÇßÀ» °æ¿ì, °ü·ÃµÈ ¿¹¿ÜÀÇ Throw½Ã¿¡ ¿ä¼Ò°¡ Ä÷º¼ÇÀÇ ¾î´À °Í¿¡µµ Á¸ÀçÇÏÁö ¾Ê´ÂÁö, ÇÑÆí ¶Ç´Â ¾çÂÊ ¸ðµÎ¿¡ Á¸ÀçÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. Å¥¸¦ ÀÚ±â Àڽſ¡°Ô ¹èÃâÇÏ´Â °ÍÀ» ½ÃµµÇϸé, IllegalArgumentExceptionÀÌ ¹ß»ý µË´Ï´Ù. ¶Ç, ÀÌ Á¶ÀÛÀÇ ÁøÇàÁßÀ¸·Î ÁöÁ¤µÈ Ä÷º¼ÇÀÌ º¯°æµÇ¾úÀ» °æ¿ìÀÇ µ¿ÀÛÀº Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
c - ¿ä¼ÒÀÇ Àü¼ÛóÀÇ Ä÷º¼Ç
maxElements - Àü¼Û ÇÏ´Â ¿ä¼ÒÀÇ ÃÖ´ë¼ö
¹Ýȯ°ª:
Àü¼Û µÇ´Â ¿ä¼ÒÀÇ ¼ö
¿¹¿Ü:
NullPointerException - c°¡ nullÀÎ °æ¿ì
IllegalArgumentException - c°¡ ÀÌ Å¥ÀÎ °æ¿ì

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.