JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.naming
Ŭ·¡½º CompositeName

java.lang.Object 
  |
  +--javax.naming.CompositeName
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
Cloneable , Name , Serializable

public class CompositeName
extends Object
implements Name

ÀÌ Å¬·¡½º´Â ÇÕ¼º¸íÀ» ³ªÅ¸³À´Ï´Ù. ÇÕ¼º¸íÀ̶õ, º¹¼öÀÇ À̸§ °ø°£¿¡ °ÉÄ¡´Â ÀÏ·ÃÀÇ ÄÄÆÛ³ÍÆ®ÀÇ À̸§ÀÔ´Ï´Ù. °¢ ÄÄÆÛ³ÍÆ®´Â ³×ÀÌ¹Ö ½Ã½ºÅÛÀÇ À̸§ °ø°£¿¡ À¯·¡Çϴ ij¸¯ÅÍ ¶óÀθíÀÔ´Ï´Ù. ÄÄÆÛ³ÍÆ®°¡ °èÃþ À̸§ °ø°£À¸·ÎºÎÅÍ ¹ß»ýÇÏ´Â °æ¿ì, CompoundName Ŭ·¡½º¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î ±× ±âº» ºÎºÐ¿¡ ±¸¹® ºÐ¼® ÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¿¡´Â ¹øÈ£¸¦ ºÙÀÏ ¼ö ÀÖ½À´Ï´Ù. N ÄÄÆÛ³ÍÆ®ÀÇ ÇÕ¼º¸íÀÇ À妽º ¹üÀ§´Â 0 À¸·ÎºÎÅÍ N ¹Ì¸¸ÀÇ ¹üÀ§¿¡¼­ ¹øÈ£¸¦ ºÙÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¹üÀ§´Â [0, N] ¿Í ³ªÅ¸³»Áý´Ï´Ù. °¡Àå Áß¿äÇÑ ÄÄÆÛ³ÍÆ®´Â À妽º 0 ¿¡ ÀÖ½À´Ï´Ù. ÇÏ´ÃÀÇ ÇÕ¼º¸í¿¡´Â ÄÄÆÛ³ÍÆ®´Â ¾ø½À´Ï´Ù.

JNDI ÇÕ¼º¸íÀÇ ±¸¹®

JNDI ¿¡¼­´Â ÇÕ¼º¸íÀÇ Ç¥ÁØ Ä³¸¯ÅÍ ¶óÀΠǥ±â°¡ Á¤Àǵ˴ϴÙ. ÀÌ Ç¥±â¿¡¼­´Â °¢ ÄÄÆÛ³ÍÆ®¸¦ ´Ü¶ôÁþ±â À§ÇÑ ÄÄÆÛ³ÍÆ® ´Ü¶ô ij¸¯ÅÍ (slash (/))¸¦ »ç¿ëÇØ, ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®°¡ ¿¬°áµË´Ï´Ù. JNDI ±¸¹®¿¡¼­´Â ´ÙÀ½ÀÇ ¸ÞŸij¶óũŸ°¡ Á¤Àǵ˴ϴÙ. ¼±ÇàÇÏ´Â ÀοëºÎÈ£, ¸ÞŸij¶óũŸ¿¡ ¼±ÇàÇÏ´Â À̽ºÄÉÀÌÇÁ, ÄÄÆÛ³ÍÆ®ÀÇ ¸»¹ÌÀÇ À̽ºÄÉÀÌÇÁ, ¶Ç´Â ÀοëºÎÈ£°¡ ¾ø´Â ÄÄÆÛ³ÍÆ®ÀÇ ÄÄÆÛ³ÍÆ® ´Ü¶ô ij¸¯ÅÍ¿¡´Â ±× ÄÄÆÛ³ÍÆ®°¡ ÇÕ¼º ¸í¹®ÀÚ¿­¿¡ º¯È¯µÉ ¶§, Àü¿¡ À̽ºÄÉÀÌÇÁ ij¸¯Å͸¦ ºÙÀÏ Çʿ䰡 ÀÖ½À´Ï´Ù. ¶Ç´Â ÀÌ·¯ÇÑ À̽ºÄÉÀÌÇÁ ij¸¯Å͸¦ Ãß°¡ÇÏÁö ¾Ê´Â °æ¿ì´Â ´ÜÀÏ ÀοëºÎÈ£ ¶Ç´Â ÀÌÁß ÀοëºÎÈ£¸¦ ´ë·Î »ç¿ëÇØ, ÄÄÆÛ³ÍÆ® Àüü¸¦ ÀοëºÎÈ£·Î µÑ·¯½Ô´Ï´Ù. ÀÌÁß ÀοëºÎÈ£·Î µÑ·¯½ÎÀÎ ÄÄÆÛ³ÍÆ®ÀÇ ´ÜÀÏ ÀοëºÎÈ£´Â ¸ÞŸij¶óũŸ¶ó°í´Â º¸ÀÌÁö ¸øÇϰí, À̽ºÄÉÀÌÇÁ µÇ´Â Àϵµ ¾ø½À´Ï´Ù. ¶Ç ¿ªÀÇ °æ¿ìµµ °°½À´Ï´Ù.

2 °³ÀÇ ÇÕ¼º¸íÀ» ºñ±³ÇÏ´Â °æ¿ì´Â ´ë¹®ÀÚ ¼Ò¹®ÀÚÀÇ ±¸º°ÀÌ Áß¿äÇÏ°Ô µË´Ï´Ù.

¼±ÇàÇÏ´Â ÄÄÆÛ³ÍÆ® ´Ü¶ô ij¸¯ÅÍ (´Ü¶ô ij¸¯ÅÍ·Î ½ÃÀ۵Ǵ ÇÕ¼º¸íÀÇ Ä³¸¯ÅÍ ¶óÀÎ)´Â ¼±ÇàÇÏ´Â ÇÏ´ÃÀÇ ÄÄÆÛ³ÍÆ® (ÇÏ´ÃÀÇ Ä³¸¯ÅÍ ¶óÀÎÀ¸·Î ±¸¼ºµÇ´Â ÄÄÆÛ³ÍÆ®)¸¦ ³ªÅ¸³À´Ï´Ù. ¸»¹ÌÀÇ ÄÄÆÛ³ÍÆ® ´Ü¶ô ij¸¯ÅÍ (´Ü¶ô ij¸¯ÅÍ·Î ³¡³ª´Â ÇÕ¼º¸íÀÇ Ä³¸¯ÅÍ ¶óÀÎ)´Â ¸»¹ÌÀÇ ÇÏ´ÃÀÇ ÄÄÆÛ³ÍÆ®¸¦ ³ªÅ¸³À´Ï´Ù. ÀÎÁ¢ÇÏ´Â º¹ÇÕ ´Ü¶ô ij¸¯ÅÍ´Â ÇÏ´ÃÀÇ ÄÄÆÛ³ÍÆ®¸¦ ³ªÅ¸³À´Ï´Ù.

ÇÕ¼º¸íÀÇ ¿¹

´ÙÀ½ÀÇ °Ñ(Ç¥)¿¡, ÇÕ¼º¸íÀÇ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù. °¢ ÇàÀº ÇÕ¼º¸íÀÇ Ä³¸¯ÅÍ ¶óÀÎ Çü½Ä, ¹× ´ëÀÀÇÏ´Â ±¸Á¶ Çü½Ä (CompositeName)À» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

ij¸¯ÅÍ ¶óÀθí CompositeName
"" {} (ÇÏ´ÃÀÇ À̸§ == »õ·Î¿î CompositeName("") == »õ·Î¿î CompositeName())
"x" {"x"}
"x/y" {"x", "y"}
"x/" {"x", ""}
"/x" {"", "x"}
"/" {""}
"//" {"", ""}
"/x/" {"", "x", ""}
"x//y" {"x", "", "y"}

º¯È¯ÀÇ ¿¹

º¯È¯ÀÇ ¿¹¸¦ ³ªÅ¸³À´Ï´Ù. ¿ìÃøÀÇ ¿­¿¡ ij¸¯ÅÍ ¶óÀÎÀÇ ÇÕ¼º¸íÀÇ º¯È¯À», ÁÂÃøÀÇ ¿­¿¡ ´ëÀÀÇÏ´Â CompositeName ÀÇ º¯È¯À» ³ªÅ¸³À´Ï´Ù. 2 °³ÀÇ ÇÕ¼º¸íÀ» °¡Áö´Â ij¸¯ÅÍ ¶óÀÎ Çü½ÄÀÇ º¯È¯Àº ij¸¯ÅÍ ¶óÀÎ Çü½ÄÀ» ¿¬°áÇÒ »ÓÀÔ´Ï´Ù.

ij¸¯ÅÍ ¶óÀθí CompositeNames
"x/y" + "/" = x/y/ {"x", "y"} + {""} = {"x", "y", ""}
"" + "x" = "x" {} + {"x"} = {"x"}
"/" + "x" = "/x" {""} + {"x"} = {"", "x"}
"x" + "" + "" = "x" {"x"} + {} + {} = {"x"}

multi-thread ¾×¼¼½º

CompositeName ÀνºÅϽº´Â º´Çà multi-thread ¾×¼¼½º¿¡ ´ëÇØ¼­´Â µ¿±âÈ­ µÇÁö ¾Ê½À´Ï´Ù. º¹¼öÀÇ thread·ÎºÎÅÍ CompositeName ¿¡ ¾×¼¼½º ÇØ º¯°æÇÏ´Â °æ¿ì´Â ¿ÀºêÁ§Æ®¸¦ Àá±Û Çʿ䰡 ÀÖ½À´Ï´Ù.

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

»ý¼ºÀÚÀÇ °³¿ä
  CompositeName ()
          »õ·Î¿î ÇÏ´ÃÀÇ ÇÕ¼º¸íÀ» ±¸ÃàÇÕ´Ï´Ù.
protected CompositeName (Enumeration  comps)
          'comps'·Î ÁöÁ¤µÇ´Â ÄÄÆÛ³ÍÆ®¸¦ »ç¿ëÇØ, »õ·Î¿î ÇÕ¼º¸í ÀνºÅϽº¸¦ ±¸ÃàÇÕ´Ï´Ù.
  CompositeName (String  n)
          ÇÕ¼º¸íÀÇ ±¸¹® (¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊ, slash·Î ´Ü¶ôÁö¾îÁø´Ù)À» »ç¿ëÇØ, ij¸¯ÅÍ ¶óÀÎ n ¸¦ ±¸¹® ºÐ¼® ÇÏ´Â °ÍÀ¸·Î, »õ·Î¿î ÇÕ¼º¸í ÀνºÅϽº¸¦ ±¸ÃàÇÕ´Ï´Ù.
 
¸Þ¼ÒµåÀÇ °³¿ä
 Name add (int posn, String  comp)
          ´ÜÀÏÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ÁöÁ¤ÇÑ À§Ä¡¿¡ Ãß°¡ÇÕ´Ï´Ù.
 Name add (String  comp)
          ´ÜÀÏÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÀÌ ÇÕ¼º¸íÀÇ ¸¶Áö¸·¿¡ Ãß°¡ÇÕ´Ï´Ù.
 Name addAll (int posn, Name  n)
          ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ÁöÁ¤ÇÑ À§Ä¡¿¡ ¼ø¼­¿¡ Ãß°¡ÇÕ´Ï´Ù.
 Name addAll (Name  suffix)
          ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ¸»¹Ì¿¡ ¼ø¼­¿¡ Ãß°¡ÇÕ´Ï´Ù.
 Object clone ()
          ÀÌ ÇÕ¼º¸íÀÇ Ä«ÇǸ¦ »ý¼ºÇÕ´Ï´Ù.
 int compareTo (Object  obj)
          CompositeName ¿Í ÁöÁ¤µÈ Object ÀÇ ¼ø¼­¸¦ ºñ±³ÇÕ´Ï´Ù.
 boolean endsWith (Name  n)
          ÇÕ¼º¸íÀÌ ÀÌ ÇÕ¼º¸íÀÇ Á¢¹Ì¸»ÀÏÁö°¡ ÆÇÁ¤µË´Ï´Ù.
 boolean equals (Object  obj)
          2 °³ÀÇ ÇÕ¼º¸íÀÌ µ¿ÀÏÇѰ¡¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 String get (int posn)
          ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÃëµæÇÕ´Ï´Ù.
 Enumeration getAll ()
          ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ij¸¯ÅÍ ¶óÀÎÀÇ ¿­°Å·Î¼­ ÃëµæÇÕ´Ï´Ù.
 Name getPrefix (int posn)
          ÄÄÆÛ³ÍÆ®°¡ ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ Á¢µÎ»ç·Î ±¸¼ºµÇ´Â ÇÕ¼º¸íÀ» ÀÛ¼ºÇÕ´Ï´Ù.
 Name getSuffix (int posn)
          ÄÄÆÛ³ÍÆ®°¡ ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ Á¢¹Ì¸»·Î ±¸¼ºµÇ´Â ÇÕ¼º¸íÀ» ÀÛ¼ºÇÕ´Ï´Ù.
 int hashCode ()
          ÀÌ ÇÕ¼º¸íÀÇ ÇØ½Ã Äڵ带 °è»êÇÕ´Ï´Ù.
 boolean isEmpty ()
          ÀÌ ÇÕ¼º¸íÀÌ ÇÏ´ÃÀÎÁö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 Object remove (int posn)
          ÀÌ ÇÕ¼º¸íÀ¸·ÎºÎÅÍ ÄÄÆÛ³ÍÆ®¸¦ »èÁ¦ÇÕ´Ï´Ù.
 int size ()
          ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ ¼ö¸¦ ÃëµæÇÕ´Ï´Ù.
 boolean startsWith (Name  n)
          ÇÕ¼º¸íÀÌ ÀÌ ÇÕ¼º¸íÀÇ Á¢µÎ»çÀÏÁö°¡ ÆÇÁ¤µË´Ï´Ù.
 String toString ()
          ÀÌ ÇÕ¼º¸íÀÇ Ä³¸¯ÅÍ ¶óÀΠǥ±â¸¦ »ý¼ºÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ¿¡¼­ »ó¼Ó¹ÞÀº ¸Þ¼Òµå
finalize , getClass , notify , notifyAll , wait , wait , wait
 

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

CompositeName

protected CompositeName(Enumeration  comps)
'comps'·Î ÁöÁ¤µÇ´Â ÄÄÆÛ³ÍÆ®¸¦ »ç¿ëÇØ, »õ·Î¿î ÇÕ¼º¸í ÀνºÅϽº¸¦ ±¸ÃàÇÕ´Ï´Ù. ÀÌ protected ¸Þ¼Òµå´Â clone(), getPrefix(), getSuffix()µîÀÇ ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇÒ °æ¿ì¿¡, CompositeName ÀÇ ¼­ºê Ŭ·¡½º¿¡¼­ »ç¿ëµË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
comps - »õ·Î¿î ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÀúÀåÇÏ´Â null ÀÌ¿ÜÀÇ ¿­°Å. °¢ ¿ä¼ÒÀÇ Å¬·¡½º´Â String. ¿­°Å´Â ¿ä¼ÒÀÇ ÃßÃâ¿¡ »ç¿ëµÈ´Ù

CompositeName

public CompositeName(String  n)
              throws InvalidNameException 
ÇÕ¼º¸íÀÇ ±¸¹® (¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊ, slash·Î ´Ü¶ôÁö¾îÁø´Ù)À» »ç¿ëÇØ, ij¸¯ÅÍ ¶óÀÎ n ¸¦ ±¸¹® ºÐ¼® ÇÏ´Â °ÍÀ¸·Î, »õ·Î¿î ÇÕ¼º¸í ÀνºÅϽº¸¦ ±¸ÃàÇÕ´Ï´Ù. ÇÕ¼º¸íÀÇ ±¸¹®Àº Ŭ·¡½ºÀÇ ¼³¸í ¶§¿¡ ÀÚ¼¼ÇÏ°Ô ¼³¸íÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
n - ±¸¹® ºÐ¼® ÇÏ´Â null ÀÌ¿ÜÀÇ Ä³¸¯ÅÍ ¶óÀÎ
¿¹¿Ü:
InvalidNameException - n ¿¡ ¹«È¿ÀÎ ÇÕ¼º¸íÀÇ ±¸¹®ÀÌ ÀÖ´Â °æ¿ì

CompositeName

public CompositeName()
»õ·Î¿î ÇÏ´ÃÀÇ ÇÕ¼º¸íÀ» ±¸ÃàÇÕ´Ï´Ù. isEmpty() °¡ ºÒ·Á °¡¸é(ÀÚ), true ¸¦ µ¹·ÁÁÝ´Ï´Ù.

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

toString

public String  toString()
ÀÌ ÇÕ¼º¸íÀÇ Ä³¸¯ÅÍ ¶óÀΠǥ±â¸¦ »ý¼ºÇÕ´Ï´Ù. ij¸¯ÅÍ ¶óÀΠǥ±â¿¡¼­´Â ÇÕ¼º¸íÀÇ °¢ ÄÄÆÛ³ÍÆ®°¡ ¿­°ÅµÇ¾î °¢ ÄÄÆÛ³ÍÆ®°¡ slash ij¸¯ÅÍ·Î ´Ü¶ôÁö¾îÁý´Ï´Ù. Àοë°ú À̽ºÄÉÀÌÇÁ ij¸¯ÅÍ´Â JNDI ±¸¹®¿¡ µû¸¦ Çʿ䰡 ÀÖ´Â Àå¼Ò¿¡ Àû¿ëµË´Ï´Ù. À̰Ϳ¡ ´ëÇØ¼­´Â Ŭ·¡½ºÀÇ ¼³¸í ¶§¿¡ ¼³¸íÇÕ´Ï´Ù. ÇÏ´ÃÀÇ ÄÄÆÛ³ÍÆ®´Â ÇÏ´ÃÀÇ Ä³¸¯ÅÍ ¶óÀÎÀ¸·Î ³ªÅ¸³»Áý´Ï´Ù. ÀÌ¿Í °°ÀÌ »ý¼ºµÈ ij¸¯ÅÍ ¶óÀΠǥ±â¸¦ CompositeName constructor ¿¡ ÀεµÇϸé(ÀÚ), »õ·Î¿î °°Àº ÇÕ¼º¸íÀ» ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ ÇÕ¼º¸íÀÇ null ÀÌ¿ÜÀÇ Ä³¸¯ÅÍ ¶óÀΠǥ±â

equals

public boolean equals(Object  obj)
2 °³ÀÇ ÇÕ¼º¸íÀÌ µ¿ÀÏÇѰ¡¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. obj °¡ null ÀÎÁö ¶Ç´Â ÇÕ¼º¸íÀÌ ¾Æ´Ñ °æ¿ì´Â false ¸¦ µ¹·ÁÁÝ´Ï´Ù. ÇÑÆíÀÇ °¢ ÄÄÆÛ³ÍÆ®°¡ ÀÌÁ¦(¹ú½á) ÇÑÆíÀÇ ´ëÀÀÇÏ´Â ÄÄÆÛ³ÍÆ®¿Í µ¿ÀÏÇÑ °æ¿ì´Â 2 °³ÀÇ ÇÕ¼º¸íÀº µ¿ÀÏÇØÁý´Ï´Ù. À̰ÍÀº ¾çÂÊ ¸ðµÎÀÇ ÇÕ¼º¸í¿¡ °°Àº ¼öÀÇ ÄÄÆÛ³ÍÆ®°¡ ÀÖ¾î, °¢ ÄÄÆÛ³ÍÆ®ÀÇ equals() Å×½ºÆ®·Î ÀÌÁ¦(¹ú½á) ÇÑÆíÀÇ À̸§ÀÇ ´ëÀÀÇÏ´Â ÄÄÆÛ³ÍÆ®¸¦ Á¶»çÇϸé(ÀÚ) true °¡ µ¹·ÁÁÖ¾îÁö´Â °ÍÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ equals
ÆÄ¶ó¹ÌÅÍ:
obj - null ÀÇ °¡´É¼ºÀÌ ÀÖ´Â ºñ±³ ´ëÁ¶ ¿ÀºêÁ§Æ®
¹Ýȯ°ª:
obj °¡ ÀÌ ÇÕ¼º¸íÀ¸·Î µ¿ÀÏÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
hashCode()

hashCode

public int hashCode()
ÀÌ ÇÕ¼º¸íÀÇ ÇØ½Ã Äڵ带 °è»êÇÕ´Ï´Ù. ÇØ½Ã ÄÚµå¶õ, ÀÌ ÇÕ¼º¸íÀÇ °¢ ÄÄÆÛ³ÍÆ®ÀÇ ÇØ½Ã ÄÚµåÀÇ ÁýÇÕÀÔ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ hashCode
¹Ýȯ°ª:
ÀÌ À̸§ÀÇ ÇØ½Ã Äڵ带 ³ªÅ¸³»´Â int
°ü·Ã Ç׸ñ:
equals(java.lang.Object)

compareTo

public int compareTo(Object  obj)
CompositeName ¿Í ÁöÁ¤µÈ Object ÀÇ ¼ø¼­¸¦ ºñ±³ÇÕ´Ï´Ù. ÀÌ Name °¡ ÁöÁ¤µÈ Object º¸´Ù ÀÛÀº °æ¿ì´Â ºÎÀÇ Á¤¼ö, µ¿ÀÏÇÑ °æ¿ì´Â 0, Å« °æ¿ì´Â Á¤ÀÇ Á¤¼ö¸¦ °¢°¢ µ¹·ÁÁÝ´Ï´Ù.

obj °¡ null, ¶Ç´Â CompositeName ÀÇ ÀνºÅϽº°¡ ¾Æ´Ñ °æ¿ì´Â ClassCastException °¡ ½½·Î¿ì µË´Ï´Ù.

2 °³ÀÇ ÇÕ¼º¸íÀÌ µ¿ÀÏÇÏ´Ù°í´Â ¾î¶°ÇÑ ÀǹÌÀΰ¡¿¡ ´ëÇØ¼­´Â equals()¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. 2 °³ÀÇ ÇÕ¼º¸íÀÌ µ¿ÀÏÇÑ °æ¿ì´Â 0 À» µ¹·ÁÁÝ´Ï´Ù.

ÇÕ¼º¸íÀÇ ¼ø¼­ºÎ´Â ij¸¯ÅÍ ¶óÀÎ ºñ±³ÀÇ »çÀü ±ÔÄ¢¿¡ µû¸£°í ÀÖ½À´Ï´Ù. ÇÕ¼º¸íÀÇ ¸ðµç ÄÄÆÛ³ÍÆ®¿¡ Àû¿ëµÇ´Â È®Àå ±â´Éµµ ÀÖ½À´Ï´Ù. ±× °á°ú, ¸ðµç ÄÄÆÛ³ÍÆ®°¡ ÁöÁ¤ÇÑ ¼ø¼­·Î, 2 °³ÀÇ ¶óÀÎ ¾÷¿¡ Àû¿ëµÈ »çÀü ±ÔÄ¢¿¡ µû¶ó ´Ã¾î³õÀ» ¼ö ÀÖ´ø °Íó·³ µË´Ï´Ù. ÀÌ ÇÕ¼º¸íÀÌ ¡¸»çÀüÀûÀ¸·Î¡¹obj º¸´Ù ÀÛÀº °æ¿ì´Â ºÎÀÇ ¼ö°¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù. ÀÌ ÇÕ¼º¸íÀÌ ¡¸»çÀüÀûÀ¸·Î¡¹obj º¸´Ù Å« °æ¿ì´Â Á¤ÀÇ ¼ö°¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ compareTo
ÆÄ¶ó¹ÌÅÍ:
obj - ºñ±³µÇ´Â null ÀÌ¿ÜÀÇ ¿ÀºêÁ§Æ®
¹Ýȯ°ª:
ÀÌ Name °¡ ÁöÁ¤µÈ Object º¸´Ù ÀÛÀº °æ¿ì´Â ºÎÀÇ Á¤¼ö, µ¿ÀÏÇÑ °æ¿ì´Â 0, Å« °æ¿ì´Â Á¤ÀÇ Á¤¼ö
¿¹¿Ü:
ClassCastException - obj °¡ CompositeName °¡ ¾Æ´Ñ °æ¿ì
°ü·Ã Ç׸ñ:
Comparable.compareTo(Object)

clone

public Object  clone()
ÀÌ ÇÕ¼º¸íÀÇ Ä«ÇǸ¦ »ý¼ºÇÕ´Ï´Ù. ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦ º¯°æÇصµ, »õ·Î¿î Ä«ÇÇ¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ¶Ç ¿ªÀÇ °æ¿ìµµ °°½À´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ clone
¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ clone
¹Ýȯ°ª:
ÀÌ ÇÕ¼º¸íÀÇ null ÀÌ¿ÜÀÇ Ä«ÇÇ
°ü·Ã Ç׸ñ:
Object.clone()

size

public int size()
ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ ¼ö¸¦ ÃëµæÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ size
¹Ýȯ°ª:
ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ ¼öÀÇ ºÎ ÀÌ¿ÜÀÇ °ª

isEmpty

public boolean isEmpty()
ÀÌ ÇÕ¼º¸íÀÌ ÇÏ´ÃÀÎÁö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÄÄÆÛ³ÍÆ®°¡ Á¦·ÎÀÇ °æ¿ì, ÇÕ¼º¸íÀº ÇÏ´ÃÀÔ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ isEmpty
¹Ýȯ°ª:
ÀÌ ÇÕ¼º¸íÀÌ ºñ¾úÀ» °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

getAll

public Enumeration  getAll()
ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ij¸¯ÅÍ ¶óÀÎÀÇ ¿­°Å·Î¼­ ÃëµæÇÕ´Ï´Ù. ÀÌ ¿­°Å·Î ÀÌ ÇÕ¼º¸íÀ» °»½ÅÇÏ´Â ¿µÇâ¿¡ ´ëÇØ¼­´Â Á¤Àǵǰí ÀÖÁö ¾Ê½À´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ getAll
¹Ýȯ°ª:
ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ null ÀÌ¿ÜÀÇ ¿­°Å. ¿­°ÅÀÇ °¢ ¿ä¼ÒÀÇ Å¬·¡½º´Â String

get

public String  get(int posn)
ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÃëµæÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ get
ÆÄ¶ó¹ÌÅÍ:
posn - ÃëµæÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ 0 À¸·ÎºÎÅÍ ½ÃÀ۵Ǵ À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
À妽º À§Ä¡ÀÇ null ÀÌ¿ÜÀÇ ÄÄÆÛ³ÍÆ®.
¿¹¿Ü:
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì

getPrefix

public Name  getPrefix(int posn)
ÄÄÆÛ³ÍÆ®°¡ ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ Á¢µÎ»ç·Î ±¸¼ºµÇ´Â ÇÕ¼º¸íÀ» ÀÛ¼ºÇÕ´Ï´Ù. ±× ÈÄ ÀÌ ÇÕ¼º¸íÀ» º¯°æÇصµ, µ¹·ÁÁÖ¾îÁö´Â À̸§¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ getPrefix
ÆÄ¶ó¹ÌÅÍ:
posn - Á¤ÁöÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ 0 À¸·ÎºÎÅÍ ½ÃÀ۵Ǵ À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
¹üÀ§°¡ [0, posn] ÀÇ À妽ºÀÇ ÄÄÆÛ³ÍÆ®·Î ±¸¼ºµÇ´Â ÇÕ¼º¸í
¿¹¿Ü:
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì

getSuffix

public Name  getSuffix(int posn)
ÄÄÆÛ³ÍÆ®°¡ ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®ÀÇ Á¢¹Ì¸»·Î ±¸¼ºµÇ´Â ÇÕ¼º¸íÀ» ÀÛ¼ºÇÕ´Ï´Ù. ±× ÈÄ ÀÌ ÇÕ¼º¸íÀ» º¯°æÇصµ, µ¹·ÁÁÖ¾îÁö´Â À̸§¿¡´Â ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ getSuffix
ÆÄ¶ó¹ÌÅÍ:
posn - °³½ÃÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ 0 À¸·ÎºÎÅÍ ½ÃÀ۵Ǵ À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
¹üÀ§°¡ [posn, size()] ÀÇ À妽ºÀÇ ÄÄÆÛ³ÍÆ®·Î ±¸¼ºµÇ´Â ÇÕ¼º¸í. À§Ä¡°¡ size()¿Í µ¿ÀÏÇÑ °æ¿ì´Â ÇÏ´ÃÀÇ ÇÕ¼º¸íÀÌ µ¹·ÁÁÖ¾îÁø´Ù
¿¹¿Ü:
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì

startsWith

public boolean startsWith(Name  n)
ÇÕ¼º¸íÀÌ ÀÌ ÇÕ¼º¸íÀÇ Á¢µÎ»çÀÏÁö°¡ ÆÇÁ¤µË´Ï´Ù. ÇÕ¼º¸í 'n'´Â getPrefix(n.size())¿Í µ¿ÀÏÇÑ °æ¿ì¿¡ Á¢µÎ»ç°¡ µË´Ï´Ù. Áï, ÀÌ ÇÕ¼º¸íÀº 'n'·Î ½ÃÀ۵˴ϴÙ. 'n'°¡ null ÀÎÁö ¶Ç´Â ÇÕ¼º¸íÀÌ ¾Æ´Ñ °æ¿ì´Â false °¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ startsWith
ÆÄ¶ó¹ÌÅÍ:
n - null ÀÇ °¡´É¼ºÀÌ ÀÖ´Â ÆÇÁ¤ ´ë»óÀÇ À̸§
¹Ýȯ°ª:
n °¡ CompositeName ·Î, ÀÌ ÇÕ¼º¸íÀÇ Á¢µÎ»çÀÎ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

endsWith

public boolean endsWith(Name  n)
ÇÕ¼º¸íÀÌ ÀÌ ÇÕ¼º¸íÀÇ Á¢¹Ì¸»ÀÏÁö°¡ ÆÇÁ¤µË´Ï´Ù. ÇÕ¼º¸í 'n'´Â getSuffix(size() -n.size())¿Í µ¿ÀÏÇÑ °æ¿ì¿¡ Á¢¹Ì¸»ÀÌ µË´Ï´Ù. Áï, ÀÌ ÇÕ¼º¸íÀº 'n'·Î Á¾·áÇÕ´Ï´Ù. n °¡ null ÀÎÁö ¶Ç´Â ÇÕ¼º¸íÀÌ ¾Æ´Ñ °æ¿ì´Â false °¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ endsWith
ÆÄ¶ó¹ÌÅÍ:
n - null ÀÇ °¡´É¼ºÀÌ ÀÖ´Â ÆÇÁ¤ ´ë»óÀÇ À̸§
¹Ýȯ°ª:
n °¡ CompositeName ·Î, ÀÌ ÇÕ¼º¸íÀÇ Á¢¹Ì¸»ÀÎ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

addAll

public Name  addAll(Name  suffix)
            throws InvalidNameException 
ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ¸»¹Ì¿¡ ¼ø¼­¿¡ Ãß°¡ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ addAll
ÆÄ¶ó¹ÌÅÍ:
suffix - Ãß°¡ÇÏ´Â null ÀÌ¿ÜÀÇ ÄÄÆÛ³ÍÆ®
¹Ýȯ°ª:
»õ·Î¿î CompositeName ´Â ¾Æ´Ï°í, °»½ÅµÈ CompositeName. null ´Â ºÒ°¡
¿¹¿Ü:
InvalidNameException - Á¢¹Ì¸»ÀÌ ÇÕ¼º¸íÀÌ ¾Æ´Ñ °æ¿ì

addAll

public Name  addAll(int posn,
                   Name  n)
            throws InvalidNameException 
ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ÁöÁ¤ÇÑ À§Ä¡¿¡ ¼ø¼­¿¡ Ãß°¡ÇÕ´Ï´Ù. ÃÖÃÊÀÇ »õ·Î¿î ÄÄÆÛ³ÍÆ®ÀÇ À妽º, ¶Ç´Â ±× µÚ¿¡ ÀÖ´Â ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®´Â »õ·Î¿î ÄÄÆÛ³ÍÆ®¸¦ ¼öÁß¿¡ ³Ö±â À§Çؼ­(¶§¹®¿¡) À§¿¡ À̵¿ (À妽º 0 À¸·ÎºÎÅÍ ¸Ö¾îÁø´Ù)ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ addAll
ÆÄ¶ó¹ÌÅÍ:
n - Ãß°¡ÇÏ´Â null ÀÌ¿ÜÀÇ ÄÄÆÛ³ÍÆ®
posn - »õ·Î¿î ÄÄÆÛ³ÍÆ®°¡ Ãß°¡µÇ´Â ÀÌ À̸§ÀÇ À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
»õ·Î¿î CompositeName ´Â ¾Æ´Ï°í, °»½ÅµÈ CompositeName. null ´Â ºÒ°¡
¿¹¿Ü:
InvalidNameException - n °¡ ÇÕ¼º¸íÀÌ ¾Æ´Ñ °æ¿ì
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì

add

public Name  add(String  comp)
         throws InvalidNameException 
´ÜÀÏÀÇ ÄÄÆÛ³ÍÆ®¸¦ ÀÌ ÇÕ¼º¸íÀÇ ¸¶Áö¸·¿¡ Ãß°¡ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ add
ÆÄ¶ó¹ÌÅÍ:
comp - Ãß°¡ÇÏ´Â null ÀÌ¿ÜÀÇ ÄÄÆÛ³ÍÆ®
¹Ýȯ°ª:
»õ·Î¿î CompositeName ´Â ¾Æ´Ï°í, °»½ÅµÈ CompositeName. null ´Â ºÒ°¡
¿¹¿Ü:
InvalidNameException - À̸§ÀÇ ¸¶Áö¸·¿¡ ÄÄÆÛ³ÍÆ®¸¦ Ãß°¡Çϸé(ÀÚ), À̸§ÀÇ ±¸¹®¿¡ À§¹ÝÇÏ´Â °æ¿ì

add

public Name  add(int posn,
                String  comp)
         throws InvalidNameException 
´ÜÀÏÀÇ ÄÄÆÛ³ÍÆ®¸¦, ÀÌ ÇÕ¼º¸íÀÇ ÁöÁ¤ÇÑ À§Ä¡¿¡ Ãß°¡ÇÕ´Ï´Ù. »õ·Î¿î ÄÄÆÛ³ÍÆ®ÀÇ À妽º, ¶Ç´Â ±× µÚ¿¡ ÀÖ´Â ÀÌ ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®´Â »õ·Î¿î ÄÄÆÛ³ÍÆ®¸¦ ¼öÁß¿¡ ³Ö±â À§Çؼ­(¶§¹®¿¡) 1 kr»ó¿¡ À̵¿ (À妽º 0 À¸·ÎºÎÅÍ ¸Ö¾îÁø´Ù)ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ add
ÆÄ¶ó¹ÌÅÍ:
comp - Ãß°¡ÇÏ´Â null ÀÌ¿ÜÀÇ ÄÄÆÛ³ÍÆ®
posn - »õ·Î¿î ÄÄÆÛ³ÍÆ®°¡ Ãß°¡µÇ´Â À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
»õ·Î¿î CompositeName ´Â ¾Æ´Ï°í, °»½ÅµÈ CompositeName. null ´Â ºÒ°¡
¿¹¿Ü:
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì
InvalidNameException - ÁöÁ¤ÇÑ À§Ä¡¿¡ ÄÄÆÛ³ÍÆ®¸¦ Ãß°¡Çϸé(ÀÚ), À̸§ÀÇ ±¸¹®¿¡ À§¹ÝÇÏ´Â °æ¿ì

remove

public Object  remove(int posn)
              throws InvalidNameException 
ÀÌ ÇÕ¼º¸íÀ¸·ÎºÎÅÍ ÄÄÆÛ³ÍÆ®¸¦ »èÁ¦ÇÕ´Ï´Ù. À§Ä¡ 'posn'¿¡ ÀÖ´Â ÇÕ¼º¸íÀÇ ÄÄÆÛ³ÍÆ®°¡ »èÁ¦µÇ¾î'posn'º¸´Ù Å« À妽ºÀÇ ÄÄÆÛ³ÍÆ®´Â 1 krÇÏ (À妽º 0 ÀÇ (ºÐ)Æí)·Î À̵¿ÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Name ³»ÀÇ remove
ÆÄ¶ó¹ÌÅÍ:
posn - »èÁ¦ÇÏ´Â ÄÄÆÛ³ÍÆ®ÀÇ À妽º. ¹üÀ§´Â [0, size()] °¡ ¾Æ´Ï¸é ¾ÈµÈ´Ù
¹Ýȯ°ª:
»èÁ¦µÈ ÄÄÆÛ³ÍÆ® (String)
¿¹¿Ü:
ArrayIndexOutOfBoundsException - À§Ä¡°¡ ÁöÁ¤ÇÑ ¹üÀ§¿¡ ¾ø´Â °æ¿ì (ÇÕ¼º¸íÀÌ ºñ¾úÀ» °æ¿ì¸¦ Æ÷ÇÔÇÑ´Ù)
InvalidNameException - ÄÄÆÛ³ÍÆ®¸¦ »èÁ¦Çϸé(ÀÚ), À̸§ÀÇ ±¸¹®¿¡ À§¹ÝÇÏ´Â °æ¿ì

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.