JavaTM Platform
Standard Ed. 6

javax.naming
클래스 CompoundName

java.lang.Object 
  상위를 확장 javax.naming.CompoundName
모든 구현된 인터페이스:
Serializable , Cloneable , Comparable <Object >, Name


public class CompoundName
extends Object
implements Name

이 클래스는 복합명을 나타냅니다. 복합명이란, 계층 이름 공간으로부터 취득되는 이름입니다. 복합명의 각 컴퍼넌트는, 불가분인 이름입니다.

복합명의 컴퍼넌트에는, 번호를 붙일 수 있습니다. N 컴퍼넌트의 복합명의 인덱스 범위는, 0 으로부터 N 미만의 범위에서 번호를 붙일 수 있습니다. 이 범위는,[0, N] 와 나타내집니다. 무엇보다 중요한 컴퍼넌트는, 인덱스 0 에 있습니다. 빈 상태(empty)의 복합명에는 컴퍼넌트는 없습니다.

복합명의 구문

복합명의 구문은, 프로퍼티세트에 의해 지정됩니다.
jndi.syntax.direction
구문 분석의 방향 (right_to_left, left_to_right, flat). 지정하지 않는 경우의 디폴트는, flat 입니다. 이것은, 이름 공간이 계층 구조가 없는 평탄한 것을 나타냅니다.
jndi.syntax.separator
기본명의 컴퍼넌트의 단락 문자. 방향이 flat 이외의 경우에 필요합니다.
jndi.syntax.ignorecase
이 프로퍼티이 존재하는 경우, true 는, 이름의 컴퍼넌트를 비교할 경우에 대문자와 소문자가 구별되지 않는 것을 나타냅니다. 값이 true 는 아닌, 또는 프로퍼티이 존재하지 않는 경우는, 이름의 컴퍼넌트를 비교할 경우에 대문자와 소문자가 구별됩니다.
jndi.syntax.escape
이 프로퍼티이 존재하는 경우는, 단락 문자, 이스케이프, 및 인용부호를 오버라이드(override) 하는 이스케이프 캐릭터 라인이 지정됩니다.
jndi.syntax.beginquote
이 프로퍼티이 존재하는 경우는, 인용된 캐릭터 라인의 시작을 단락짓는 캐릭터 라인이 지정됩니다.
jndi.syntax.endquote
인용된 캐릭터 라인의 마지막을 단락짓는 캐릭터 라인. 이 프로퍼티이 존재하는 경우는, 인용된 캐릭터 라인의 마지막을 단락짓는 캐릭터 라인이 지정됩니다. 이 프로퍼티이 존재하지 않는 경우는, 종료 인용부호로서 syntax.beginquote 가 사용됩니다.
jndi.syntax.beginquote2
개시/종료 인용부호세트의 대체
jndi.syntax.endquote2
개시/종료 인용부호세트의 대체
jndi.syntax.trimblanks
이 프로퍼티이 존재하는 경우, true 는, 비교를 위해서(때문에) 이름의 컴퍼넌트의 선두와 말미의 공백이 잘라내지는 것을 나타냅니다. 값이 true 는 아닌, 또는 이 프로퍼티이 존재하지 않는 경우는, 공백이 중요하게 됩니다.
jndi.syntax.separator.ava
이 프로퍼티이 존재하는 경우는, 복수의 속성 또는 값의 페어를 지정할 경우에, 속성 선언치를 단락짓는 캐릭터 라인이 지정됩니다 (age=65, gender=male 의 「,」 등).
jndi.syntax.separator.typeval
이 프로퍼티이 존재하는 경우는, 속성과 값을 단락짓는 캐릭터 라인이 지정됩니다 ( 「age=65」의 「=」 등).
상기의 프로퍼티은, 다음의 규칙에 따라 해석됩니다.
  1. 인용부호 또는 이스케이프가 없는 캐릭터 라인에서는, 단락 문자의 인스턴스에 의해 2 개의 기본명이 단락지어집니다. 각 기본명은, 「컴퍼넌트」라고 불립니다.
  2. 직전에 (좌측으로) 이스케이프가 있는 경우, 단락 문자, 인용부호, 또는 이스케이프는 이스케이프 됩니다.
  3. 인용부호세트가 2 개 있는 경우는, 특정의 개시 인용부호와 대응하는 종료 인용부호가 일치하고 있을 필요가 있습니다.
  4. 컴퍼넌트에 선행하는, 이스케이프되어 있지 않은 개시 인용부호는, 컴퍼넌트의 말미에 있는, 이스케이프되어 있지 않은 종료 인용부호와 일치하고 있을 필요가 있습니다. 이와 같이 인용된 컴퍼넌트는, 「인용된 컴퍼넌트」라고 불립니다. 개시 인용부호와 종료 인용부호를 삭제해, 또 다음의 리스트에 나타내는 인용된 컴퍼넌트에 관련하는 규칙의 1 개가 적용되지 않는 경우, 중간의 문자를 일반적으로의 문자로 간주하는 것으로, 인용된 컴퍼넌트는 구문 분석 됩니다.
  5. 인용되어 있지 않은 컴퍼넌트에 파묻힌 인용부호는, 일반적으로의 캐릭터 라인으로 간주해져 일치하고 있을 필요는 없습니다.
  6. 이스케이프 된다, 또는 이스케이프되어 있지 않은 인용부호의 사이에 표시되는 단락 문자는, 단락 문자는 아니고 일반적으로의 문자로 간주해집니다.
  7. 인용된 컴퍼넌트내의 이스케이프 캐릭터 라인은, 그 뒤로 대응하는 종료 인용부호 캐릭터 라인이 있는 경우만, 이스케이프로서 기능합니다. 이것은, 인용된 컴퍼넌트에 이스케이프 된 인용부호를 묻기 위해서(때문에) 사용됩니다.
  8. 이스케이프 된 이스케이프 캐릭터 라인은, 이스케이프 캐릭터 라인이라고는 보이지 않습니다.
  9. 전에 메타 캐릭터열 (인용부호 또는 단락지어 문자)이 없고, 컴퍼넌트가 마지막에 없는 이스케이프 캐릭터 라인은, 일반적으로의 캐릭터 라인으로 간주해집니다.
  10. 선행하는 단락 문자 (단락 문자로 시작되는 복합명의 캐릭터 라인)는, 선행하는 빈 상태(empty)의 기본 컴퍼넌트 (빈 상태(empty)의 캐릭터 라인으로 구성된다)를 나타냅니다. 말미의 단락 문자 (단락 문자로 끝나는 복합명의 캐릭터 라인)는, 말미의 빈 상태(empty)의 기본 컴퍼넌트를 나타냅니다. 인접하는 단락 문자는, 빈 상태(empty)의 기본 컴퍼넌트를 나타냅니다.

복합명의 캐릭터 라인 형식은, 상기의 구문에 따릅니다. 복합명의 컴퍼넌트가 캐릭터 라인 표기에 변환되는 경우는, 상기의 예약된 구문 규칙이 적용됩니다 (파묻힌 단락 문자는 이스케이프 또는 인용되는 등). 그 때문에, 같은 캐릭터 라인이 구문 분석 되는 경우, 원의 복합명과 같은 컴퍼넌트가 작성됩니다.

multi-thread 액세스

CompoundName 인스턴스는, 병행 multi-thread 액세스에 대해서는 동기화 되지 않습니다. 복수의 thread로부터 CompoundName 에 액세스 해 변경하는 경우는, 객체를 잠글 필요가 있습니다.

도입된 버젼:
1.3
관련 항목:
직렬화 된 형식

필드의 개요
protected  javax.naming.NameImpl impl
          이 복합명의 구현입니다.
protected  Properties mySyntax
          이 복합명의 구문 프로퍼티입니다.
 
생성자 의 개요
protected CompoundName (Enumeration <String > comps, Properties  syntax)
          comps 로 지정된 컴퍼넌트와 syntax 를 사용해, 새로운 복합명 인스턴스를 구축합니다.
  CompoundName (String  n, Properties  syntax)
          지정한 구문 프로퍼티으로 지정되는 구문을 사용해, 캐릭터 라인 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)
          CompoundName 와 지정된 Object 의 순서를 비교합니다.
 boolean endsWith (Name  n)
          복합명이 이 복합명의 접미사(suffix)일지 어떨지가 판정됩니다.
 boolean equals (Object  obj)
          obj 가 이 복합명으로 구문적으로 동일한가를 판정합니다.
 String get (int posn)
          이 복합명의 컴퍼넌트를 가져옵니다.
 Enumeration <String > getAll ()
          이 복합명의 컴퍼넌트를, 캐릭터 라인의 열거로서 가져옵니다.
 Name getPrefix (int posn)
          컴퍼넌트가 이 복합명의 컴퍼넌트의 접두사가 되는 복합명을 작성합니다.
 Name getSuffix (int posn)
          컴퍼넌트가 이 복합명의 컴퍼넌트의 접미사(suffix)을 구성하는 복합명을 작성합니다.
 int hashCode ()
          이 복합명의 해시 코드를 계산합니다.
 boolean isEmpty ()
          이 복합명이 빈 상태(empty)인가 어떤가를 판정합니다.
 Object remove (int posn)
          이 복합명으로부터 컴퍼넌트를 삭제합니다.
 int size ()
          이 복합명의 컴퍼넌트수를 가져옵니다.
 boolean startsWith (Name  n)
          복합명이 이 복합명의 접두사일지 어떨지가 판정됩니다.
 String toString ()
          복합명의 구문 규칙을 사용하는, 이 복합명의 캐릭터 라인 표기를 생성합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
finalize , getClass , notify , notifyAll , wait , wait , wait
 

필드의 상세

impl

protected transient javax.naming.NameImpl impl
이 복합명의 구현입니다. 이 필드는 생성자 에 의해 초기화되어 null 로 할 수 없습니다. 이 필드는 서브 클래스에 의해 read 전용 변수로 간주해질 필요가 있습니다.


mySyntax

protected transient Properties  mySyntax
이 복합명의 구문 프로퍼티입니다. 이 필드는 생성자 에 의해 초기화되어 null 로 할 수 없습니다. 이 필드는 서브 클래스에 의해 read 전용 변수로 간주해질 필요가 있습니다. mySyntax 를 변경하는 경우는, 생성자 내에서 변경해, 복합명이 인스턴스화 된 후에 변경하지 말아 주세요.

생성자 의 상세

CompoundName

protected CompoundName(Enumeration <String > comps,
                       Properties  syntax)
comps 로 지정된 컴퍼넌트와 syntax 를 사용해, 새로운 복합명 인스턴스를 구축합니다. 이 protected 메소드는, clone(), getPrefix(), getSuffix()등의 메소드를 오버라이드(override) 할 경우에, CompoundName 의 서브 클래스에서 사용됩니다.

파라미터:
comps - 추가하는 컴퍼넌트의 null 이외의 열거 열거된 각 요소의 클래스는 String 열거는 요소의 추출에 사용되는
syntax - 이 복합명의 구문을 지정하는 null 이외의 프로퍼티 프로퍼티의 내용은, 클래스의 설명을 참조

CompoundName

public CompoundName(String  n,
                    Properties  syntax)
             throws InvalidNameException 
지정한 구문 프로퍼티으로 지정되는 구문을 사용해, 캐릭터 라인 n 를 구문 분석 하는 것으로, 새로운 복합명 인스턴스를 구축합니다.

파라미터:
n - 구문 분석 하는 null 이외의 캐릭터 라인
syntax - 이 복합명의 구문을 지정하는 null 이외의 프로퍼티의 리스트 프로퍼티의 내용은, 클래스의 설명을 참조
예외:
InvalidNameException - 'n'가 syntax 로 지정되는 구문에 위반하는 경우
메소드의 상세

toString

public String  toString()
복합명의 구문 규칙을 사용하는, 이 복합명의 캐릭터 라인 표기를 생성합니다. 구문 규칙은, 클래스의 설명으로 설명합니다. 빈 상태(empty)의 컴퍼넌트는, 빈 상태(empty)의 캐릭터 라인으로 나타내집니다. 이와 같이 생성된 캐릭터 라인 표기를, 같은 구문 프로퍼티을 가지는 CompoundName 생성자 에 인도하면(자), 새로운 같은 복합명을 작성할 수 있습니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
이 복합명의 null 이외의 캐릭터 라인 표기

equals

public boolean equals(Object  obj)
obj 가 이 복합명으로 구문적으로 동일한가를 판정합니다. obj 가 null 인지, 또는 CompoundName 가 아닌 경우, false 가 돌려주어집니다. 한편의 각 컴퍼넌트가 이제(벌써) 한편의 대응하는 컴퍼넌트와 「동일하다」경우, 2 개의 복합명은 동일해집니다.

동일한지 어떤지는, 이 복합명의 구문에 의해도 정의됩니다. CompoundName 의 디폴트의 구현에서는, 2 개의 컴퍼넌트가 동일한지 어떤지를 비교할 경우에, 구문 프로퍼티 jndi.syntax.ignorecase 및 jndi.syntax.trimblanks 가 사용됩니다. 대문자와 소문자가 구별되지 않는 경우, 같은 문자의 순서를 가져, 대문자와 소문자 어디라도 캐릭터 라인이 동일하다고 보입니다. 공백이 삭제되는 경우는, 비교를 위해서(때문에) 최초의 공백과 말미의 공백은 무시됩니다.

2 개의 복합명에는, 같은 수의 컴퍼넌트가 필요합니다.

구현상의 주의:현재, 2 개의 복합명의 구문 프로퍼티이 동일한지 어떤지는 비교되고 있지 않습니다. 향후 사용 또는 확인될 가능성이 있습니다.

오버라이드(override):
클래스 Object 내의 equals
파라미터:
obj - null 의 가능성이 있는 비교 대조 객체
반환값:
obj 가 이 복합명으로 동일한 경우는 true, 그렇지 않은 경우는 false
관련 항목:
compareTo(java.lang.Object obj)

hashCode

public int hashCode()
이 복합명의 해시 코드를 계산합니다. 해시 코드란, 이 복합명의 각 컴퍼넌트의 표준화 형식 해시 코드의 집합입니다. 각 컴퍼넌트는, 해시 코드가 계산되기 전에, 복합명의 구문에 따라 표준화 됩니다. 예를 들어, 대문자와 소문자를 구별하는 이름의 경우, 대문자 형식의 이름의 해시 코드는, 소문자의 이름과 같습니다.

오버라이드(override):
클래스 Object 내의 hashCode
반환값:
이 이름의 해시 코드를 나타내는 int
관련 항목:
Object.equals(java.lang.Object) , Hashtable

clone

public Object  clone()
이 복합명의 카피를 작성합니다. 이 복합명의 컴퍼넌트를 변경해도, 새로운 카피에는 영향을 주지 않습니다. 또 역의 경우도 같습니다. 카피와 이 복합명에서는, 같은 구문을 공유합니다.

정의:
인터페이스 Name 내의 clone
오버라이드(override):
클래스 Object 내의 clone
반환값:
이 복합명의 null 이외의 카피
관련 항목:
Cloneable

compareTo

public int compareTo(Object  obj)
CompoundName 와 지정된 Object 의 순서를 비교합니다. 이 Name 가 지정된 Object 보다 작은 경우는 부의 정수, 동일한 경우는 0, 큰 경우는 정의 정수를 각각 돌려줍니다.

obj 가 null, 또는 CompoundName 의 인스턴스가 아닌 경우는, ClassCastException 가 throw 됩니다.

2 개의 복합명이 동일하다고는 어떠한 의미인가에 대해서는, equals()를 참조해 주세요. 2 개의 복합명이 동일한 경우는, 0 을 돌려줍니다.

복합명의 순서부는, 복합명의 구문에 의합니다. 디폴트에서는, 캐릭터 라인 비교의 사전 규칙에 준거합니다. 이 규칙은, 복합명에 포함되는 모든 컴퍼넌트에 적용됩니다. 다만, 컴퍼넌트가 비교될 때는, equals()의 경우와 같게, jndi.syntax.ignorecase 프로퍼티과 jndi.syntax.trimblanks 프로퍼티이 적용됩니다. 이 복합명이 「사전 규칙에 따르며」 obj 보다 작은 경우는, 부의 수가 돌려주어집니다. 이 복합명이 「사전 규칙에 따르며」 obj 보다 큰 경우는, 정의 수가 돌려주어집니다.

구현상의 주의:현재, 2 개의 복합명의 구문 프로퍼티이 동일한지 어떤지는, 순서의 확인시에는 비교되고 있지 않습니다. 향후 비교될 가능성이 있습니다.

정의:
인터페이스 Comparable <Object > 내의 compareTo
정의:
인터페이스 Name 내의 compareTo
파라미터:
obj - 비교되는 null 이외의 객체
반환값:
이 Name 가 지정된 Object 보다 작은 경우는 부의 정수, 동일한 경우는 0, 큰 경우는 정의 정수
예외:
ClassCastException - obj 가 CompoundName 가 아닌 경우
관련 항목:
equals(java.lang.Object)

size

public int size()
이 복합명의 컴퍼넌트수를 가져옵니다.

정의:
인터페이스 Name 내의 size
반환값:
이 복합명의 컴퍼넌트수의 부 이외의 값

isEmpty

public boolean isEmpty()
이 복합명이 빈 상태(empty)인가 어떤가를 판정합니다. 컴퍼넌트가 제로의 경우, 복합명은 빈 상태(empty)입니다.

정의:
인터페이스 Name 내의 isEmpty
반환값:
이 복합명이 빈 상태(empty)의 경우는 true, 그렇지 않은 경우는 false

getAll

public Enumeration <String > getAll()
이 복합명의 컴퍼넌트를, 캐릭터 라인의 열거로서 가져옵니다. 이 열거로 이 복합명을 갱신했을 경우의 영향에 대해서는, 정의되고 있지 않습니다.

정의:
인터페이스 Name 내의 getAll
반환값:
이 복합명의 컴퍼넌트의 null 이외의 열거 열거된 각 요소의 클래스는 String

get

public String  get(int posn)
이 복합명의 컴퍼넌트를 가져옵니다.

정의:
인터페이스 Name 내의 get
파라미터:
posn - 취득하는 컴퍼넌트의 0 으로부터 시작되는 인덱스 범위는 [0, size()] 가 아니면 안된다
반환값:
인덱스의 컴퍼넌트
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

getPrefix

public Name  getPrefix(int posn)
컴퍼넌트가 이 복합명의 컴퍼넌트의 접두사가 되는 복합명을 작성합니다. 작성된 복합명과 이 복합명에서는, 같은 구문을 공유합니다. 그 후 이 복합명을 변경해도, 반환되는 이름에는 영향을 주지 않습니다. 또 역의 경우도 같습니다.

정의:
인터페이스 Name 내의 getPrefix
파라미터:
posn - 정지하는 컴퍼넌트의 0 으로부터 시작되는 인덱스 범위는 [0, size()] 가 아니면 안된다
반환값:
범위가 [0, posn] 의 인덱스를 가지는 컴퍼넌트로부터 완성되는 복합명
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

getSuffix

public Name  getSuffix(int posn)
컴퍼넌트가 이 복합명의 컴퍼넌트의 접미사(suffix)을 구성하는 복합명을 작성합니다. 작성된 복합명과 이 복합명에서는, 같은 구문을 공유합니다. 그 후 이 복합명을 변경해도, 반환되는 이름에는 영향을 주지 않습니다.

정의:
인터페이스 Name 내의 getSuffix
파라미터:
posn - 개시하는 컴퍼넌트의 0 으로부터 시작되는 인덱스 범위는 [0, size()] 가 아니면 안된다
반환값:
범위가 [posn, size()] 의 인덱스를 가지는 컴퍼넌트로부터 완성되는 복합명. 위치가 size()와 동일한 경우는, 빈 상태(empty)의 복합명이 반환된다
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우

startsWith

public boolean startsWith(Name  n)
복합명이 이 복합명의 접두사일지 어떨지가 판정됩니다. 복합명 'n'는, getPrefix(n.size())와 동일한 경우에 접두사가 됩니다. 즉, 이 복합명은 'n'로 개시됩니다. n 가 null 인지, 또는 복합명이 아닌 경우는, false 가 돌려주어집니다.

구현상의 주의:현재, n 의 구문 프로퍼티은 비교시에 사용되고 있지 않습니다. 향후 비교될 가능성이 있습니다.

정의:
인터페이스 Name 내의 startsWith
파라미터:
n - null 의 가능성이 있는 판정 대상의 복합명
반환값:
n 가 CompoundName 로, 이 복합명 의 접두사인 경우는 true, 그렇지 않은 경우는 false

endsWith

public boolean endsWith(Name  n)
복합명이 이 복합명의 접미사(suffix)일지 어떨지가 판정됩니다. 복합명 'n'는, getSuffix(size() -n.size())와 동일한 경우에 접미사(suffix)이 됩니다. 즉, 이 복합명은 'n'로 종료합니다. n 가 null 인지, 또는 복합명이 아닌 경우는, false 가 돌려주어집니다.

구현상의 주의:현재, n 의 구문 프로퍼티은 비교시에 사용되고 있지 않습니다. 향후 비교될 가능성이 있습니다.

정의:
인터페이스 Name 내의 endsWith
파라미터:
n - null 의 가능성이 있는 판정 대상의 복합명
반환값:
n 가 CompoundName 로, 이 복합명 의 접미사(suffix)인 경우는 true, 그렇지 않은 경우는 false

addAll

public Name  addAll(Name  suffix)
            throws InvalidNameException 
복합명의 컴퍼넌트를, 이 복합명의 말미에 순서에 추가합니다.

구현상의 주의:현재, 접미사(suffix)의 구문 프로퍼티은 사용 또는 확인되고 있지 않습니다. 향후 비교될 가능성이 있습니다.

정의:
인터페이스 Name 내의 addAll
파라미터:
suffix - 추가하는 null 이외의 컴퍼넌트
반환값:
새로운 CompoundName 는 아니고, 갱신된 CompoundName. null 는 불가
예외:
InvalidNameException - 접미사(suffix)이 복합명은 아닌, 또는 컴퍼넌트의 추가가 이 복합명의 구문에 위반하는 경우 (컴퍼넌트의 수를 넘는 등)

addAll

public Name  addAll(int posn,
                   Name  n)
            throws InvalidNameException 
복합명의 컴퍼넌트를, 이 복합명의 지정한 위치에 순서에 추가합니다. 최초의 새로운 컴퍼넌트의 인덱스, 또는 그 뒤에 있는 이 복합명의 컴퍼넌트는 위 (인덱스 0 으로부터 멀어진다)에 이동되어 새로운 컴퍼넌트가 조정됩니다.

구현상의 주의:현재, 접미사(suffix)의 구문 프로퍼티은 사용 또는 확인되고 있지 않습니다. 향후 비교될 가능성이 있습니다.

정의:
인터페이스 Name 내의 addAll
파라미터:
n - 추가하는 null 이외의 컴퍼넌트
posn - 새로운 컴퍼넌트가 추가되는 이 이름의 인덱스 범위는 [0, size()] 가 아니면 안된다
반환값:
새로운 CompoundName 는 아니고, 갱신된 CompoundName. null 는 불가
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우
InvalidNameException - n 가 복합명이 아닌 경우, 또는 컴퍼넌트의 추가가 이 복합명의 구문에 위반하는 경우 (컴퍼넌트의 수를 넘는 등)

add

public Name  add(String  comp)
         throws InvalidNameException 
단일의 컴퍼넌트를 이 복합명의 마지막에 추가합니다.

정의:
인터페이스 Name 내의 add
파라미터:
comp - 추가하는 null 이외의 컴퍼넌트
반환값:
새로운 CompoundName 는 아니고, 갱신된 CompoundName. null 는 불가
예외:
InvalidNameException - 이름의 마지막에 컴퍼넌트를 추가하면(자), 복합명의 구문에 위반하는 경우

add

public Name  add(int posn,
                String  comp)
         throws InvalidNameException 
단일의 컴퍼넌트를, 이 복합명의 지정한 위치에 추가합니다. 새로운 컴퍼넌트의 인덱스, 또는 그 뒤에 있는 이 복합명의 컴퍼넌트는 1 개상 (인덱스 0 으로부터 멀어진다)에 이동되어 새로운 컴퍼넌트가 조정됩니다.

정의:
인터페이스 Name 내의 add
파라미터:
comp - 추가하는 null 이외의 컴퍼넌트
posn - 새로운 컴퍼넌트가 추가되는 인덱스. 범위는 [0, size()] 가 아니면 안된다
반환값:
새로운 CompoundName 는 아니고, 갱신된 CompoundName. null 는 불가
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우
InvalidNameException - 지정한 위치에 컴퍼넌트를 추가하면(자) 복합명의 구문에 위반하는 경우

remove

public Object  remove(int posn)
              throws InvalidNameException 
이 복합명으로부터 컴퍼넌트를 삭제합니다. 위치 'posn'에 있는 복합명의 컴퍼넌트가 삭제되어'posn'보다 큰 인덱스의 컴퍼넌트는, 1 개(살)하 (인덱스 0 (분)편에)에 이동됩니다.

정의:
인터페이스 Name 내의 remove
파라미터:
posn - 삭제하는 컴퍼넌트의 인덱스 범위는 [0, size()] 가 아니면 안된다
반환값:
삭제된 컴퍼넌트 (String)
예외:
ArrayIndexOutOfBoundsException - 위치가 지정한 범위에 없는 경우 (복합명이 빈 상태(empty)의 경우를 포함한다)
InvalidNameException - 컴퍼넌트를 삭제하면(자), 복합명의 구문에 위반하는 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.