JavaTM Platform
Standard Ed. 6

java.util
클래스 AbstractMap<K, V>

java.lang.Object 
  상위를 확장 java.util.AbstractMap<K, V>
형태 파라미터:
K - 이 맵이 보관 유지하는 키의 형태
V - 맵 되는 값의 형태
모든 구현된 인터페이스:
Map <K, V>
직계의 기존의 서브 클래스:
ConcurrentHashMap , ConcurrentSkipListMap , EnumMap , HashMap , IdentityHashMap , TreeMap , WeakHashMap


public abstract class AbstractMap<K, V>
extends Object
implements Map <K, V>

이 클래스는,Map 인터페이스의 스켈리턴 구현을 제공해, 이 인터페이스를 구현하는데 필요한 작업량을 최소한으로 억제합니다.

변경 불가능한 맵을 구현하려면 , 이 클래스를 확장해, 맵의 매핑의 셋트뷰를 돌려주는 entrySet 메소드를 구현할 필요가 있습니다. 일반적으로, 반환된 세트는 AbstractSet 위에 구현됩니다. 이 세트에서는 add 메소드와 remove 메소드를 지원해야 하지는 않습니다. 또, 세트의 반복자에서는 remove 메소드를 지원해야 하지는 않습니다.

변경 가능한 맵을 구현하려면 , 상기에 가세해, 이 클래스의 put 메소드를 오버라이드(override) 합니다 (오버라이드(override) 하지 않았던 경우는,UnsupportedOperationException 가 throw 됩니다). 또, 상기에 가세해,entrySet(). iterator() 로 반환되는 반복자에게 remove 메소드를 구현할 필요가 있습니다.

Map 인터페이스의 스펙으로 추천 되고 있도록(듯이), 일반적으로은, 인수 없음의 void 생성자 , 및 인수에 맵을 취하는 생성자 을 제공해 주세요.

구현의 상세한 것에 대하여는, 이 클래스의 abstract 메소드 이외의 각 메소드의 문서를 참조해 주세요. 보다 효율적인 구현을 할 수 있는 맵의 경우는, 이러한 메소드를 오버라이드(override) 해도 괜찮습니다.

이 클래스는,Java Collections Framework 의 멤버입니다.

도입된 버젼:
1.2
관련 항목:
Map , Collection

상자의 클래스의 개요
static class AbstractMap.SimpleEntry <K ,V >
          키와 값을 유지하는 엔트리.
static class AbstractMap.SimpleImmutableEntry <K ,V >
          불변의 키와 값을 유지하는 엔트리.
 
인터페이스 java.util. Map 로부터 상속된 상자의 클래스/인터페이스
Map.Entry <K ,V >
 
생성자 의 개요
protected AbstractMap ()
          유일한 생성자 입니다.
 
메소드의 개요
 void clear ()
          맵으로부터 매핑을 모두 삭제합니다 (임의의 오퍼레이션).
protected  Object clone ()
          AbstractMap 의 인스턴스의 shallow 복사를 돌려줍니다.
 boolean containsKey (Object  key)
          맵이 지정된 키의 매핑을 보관 유지하는 경우에 true 를 돌려줍니다.
 boolean containsValue (Object  value)
          맵이 1 개 또는 복수의 키와 지정된 값을 매핑 하고 있는 경우에 true 를 돌려줍니다.
abstract  Set <Map.Entry <K ,V >> entrySet ()
          이 맵에 포함되는 맵 Set 뷰를 돌려줍니다.
 boolean equals (Object  o)
          지정된 객체가 이 맵과 동일한지 어떤지를 비교합니다.
 V get (Object  key)
          지정된 키가 맵 되고 있는 값을 돌려줍니다.
 int hashCode ()
          맵의 해시 코드값를 돌려줍니다.
 boolean isEmpty ()
          맵이 키와 값의 매핑을 보관 유지하지 않는 경우에 true 를 돌려줍니다.
 Set <K > keySet ()
          이 맵에 포함되는 키 Set 뷰를 돌려줍니다.
 V put (K  key, V  value)
          지정된 값과 지정된 키를 이 맵에 관련짓습니다 (임의의 오퍼레이션).
 void putAll (Map <? extends K ,? extends V > m)
          지정된 맵의 모든 매핑을 이 맵에 카피합니다 (임의의 오퍼레이션).
 V remove (Object  key)
          키의 매핑이 있는 경우에, 그 매핑을 이 맵으로부터 삭제합니다 (임의의 오퍼레이션).
 int size ()
          맵내의 키치 매핑의 수를 돌려줍니다.
 String toString ()
          이 맵의 캐릭터 라인 표현을 돌려줍니다.
 Collection <V > values ()
          이 맵에 포함되는 값 Collection 뷰를 돌려줍니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
finalize , getClass , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

AbstractMap

protected AbstractMap()
유일한 생성자 입니다. 서브 클래스의 생성자 에 의한 호출용으로, 일반적으로은 암묵적으로 불려 갑니다.

메소드의 상세

size

public int size()
맵내의 키치 매핑의 수를 돌려줍니다. 맵에 Integer.MAX_VALUE 보다 많은 요소가 있는 경우는,Integer.MAX_VALUE 를 돌려줍니다.

이 구현은 entrySet(). size() 를 돌려줍니다.

정의:
인터페이스 Map <K ,V > 내의 size
반환값:
맵내의 키와 값의 매핑의 수

isEmpty

public boolean isEmpty()
맵이 키와 값의 매핑을 보관 유지하지 않는 경우에 true 를 돌려줍니다.

이 구현은 size() == 0 의 결과를 돌려줍니다.

정의:
인터페이스 Map <K ,V > 내의 isEmpty
반환값:
맵이 키와 값의 매핑을 보관 유지하지 않는 경우는 true

containsValue

public boolean containsValue(Object  value)
맵이 1 개 또는 복수의 키와 지정된 값을 매핑 하고 있는 경우에 true 를 돌려줍니다. 즉, 맵에,(value==null ? v==null : value.equals(v)) 가 되는 값 v 에의 매핑이 1 개 이상 있는 경우에만 true 를 돌려줍니다. Map 인터페이스의 대부분의 구현으로, 이 오퍼레이션에 걸리는 시간은 맵의 사이즈에 정비례 합니다.

이 구현은 entrySet() 의 내용을 차례차례 조사해 지정된 값을 가지는 엔트리를 검색합니다. 그러한 엔트리가 발견되었을 경우는,true 를 돌려줍니다. 목적의 엔트리가 발견되지 않고 반복이 종료했을 경우는,false 를 돌려줍니다. 이 구현에서는, 맵의 사이즈에 정비례 한 시간이 필요한 일로 주의해 주세요.

정의:
인터페이스 Map <K ,V > 내의 containsValue
파라미터:
value - 맵에 있을지 어떨지를 판정되는 값
반환값:
맵이 1 개 또는 복수의 키와 지정된 값을 매핑 하고 있는 경우는 true
예외:
ClassCastException - 치가 맵에 적합하지 않는 형태의 경우 (생략 가능)
NullPointerException - 지정된 값이 null 이며, 이 맵이 null 치를 허가하지 않는 경우 (생략 가능)

containsKey

public boolean containsKey(Object  key)
맵이 지정된 키의 매핑을 보관 유지하는 경우에 true 를 돌려줍니다. 즉, 이 맵에,(key==null ? k==null : key.equals(k)) 가 되는 키 k 가 포함되어 있는 경우에만 true 를 돌려줍니다. 이러한 매핑이 1 개만 있습니다.

이 구현은 entrySet() 의 내용을 차례차례 조사해 지정된 키를 가지는 엔트리를 검색합니다. 그러한 엔트리가 발견되었을 경우는,true 를 돌려줍니다. 목적의 엔트리가 발견되지 않고 반복이 종료했을 경우는,false 를 돌려줍니다. 이 구현에서는, 맵의 사이즈에 정비례 한 시간이 필요한 일로 주의해 주세요. 많은 구현은, 이 메소드를 오버라이드(override) 합니다.

정의:
인터페이스 Map <K ,V > 내의 containsKey
파라미터:
key - 맵에 있을지 어떨지가 판정되는 키
반환값:
맵이 지정된 키의 매핑을 보관 유지하는 경우는 true
예외:
ClassCastException - 키가 맵에 적합하지 않는 형태의 경우 (생략 가능)
NullPointerException - 지정된 키가 null 이며, 이 맵이 null 키를 허가하지 않는 경우 (생략 가능)

get

public V  get(Object  key)
지정된 키가 맵 되고 있는 값을 돌려줍니다. 그 키의 매핑이 이 맵에 포함되지 않은 경우는 null 를 돌려줍니다.

즉, 이 메소드는,(key==null ? k==null : key.equals(k)) 가 되는 키 k 로부터 값 v 에의 매핑이 이 맵에 포함되어 있는 경우는 v 를 돌려주어, 그 이외의 경우는 null 를 돌려줍니다. 이러한 매핑이 1 개만 있습니다.

이 맵이 null 치를 허가하는 경우, 반환값의 null 는, 맵이 키의 매핑을 보관 유지하고 있지 않는 것을 나타낸다고는인가 선. 즉, 맵이 명시적으로 키를 null 에 맵 하는 일도 있습니다. containsKey 오퍼레이션을 사용하면(자), 이 2 개의 경우를 구별할 수 있습니다.

이 구현은 entrySet() 의 내용을 차례차례 조사해 지정된 키를 가지는 엔트리를 검색합니다. 그러한 엔트리가 발견되었을 경우는, 엔트리의 값을 돌려줍니다. 목적의 엔트리가 발견되지 않고 반복이 종료했을 경우는,null 를 돌려줍니다. 이 구현에서는, 맵의 사이즈에 정비례 한 시간이 필요한 일로 주의해 주세요. 많은 구현은, 이 메소드를 오버라이드(override) 합니다.

정의:
인터페이스 Map <K ,V > 내의 get
파라미터:
key - 관련지을 수 있었던 값이 반환되는 키
반환값:
지정된 키가 맵 되고 있는 값. 그 키의 매핑이 이 맵에 포함되지 않은 경우는 null
예외:
ClassCastException - 키가 맵에 적합하지 않는 형태의 경우 (생략 가능)
NullPointerException - 지정된 키가 null 이며, 이 맵이 null 키를 허가하지 않는 경우 (생략 가능)

put

public V  put(K  key,
             V  value)
지정된 값과 지정된 키를 이 맵에 관련짓습니다 (임의의 오퍼레이션). 맵에 벌써 이 키에 대한 매핑이 있는 경우, 낡은 값은 지정된 값으로 옮겨집니다. m.containsKey(k)true 를 돌려주는 경우에 한정해, 맵 m 는, 키 k 의 매핑을 포함한다고 말할 수 있습니다.

이 구현은, 항상 UnsupportedOperationException 를 throw 합니다.

정의:
인터페이스 Map <K ,V > 내의 put
파라미터:
key - 지정된 값을 관련지을 수 있는 키
value - 지정된 키에 관련지을 수 있는 값
반환값:
key 에 이전에 관련지을 수 있고 있던 값. key 의 매핑이 존재하지 않았던 경우는 null. (null 의 반환값은, 구현이 null 치를 지원하고 있는 경우,keynull 를 이전 관련짓고 있던 맵을 나타내는 경우도 있다)
예외:
UnsupportedOperationException - put 오퍼레이션이 이 맵으로 지원되지 않는 경우
ClassCastException - 지정된 키 또는 값의 클래스가 원인으로, 이 맵에 그것들을 포함할 수 없는 경우
NullPointerException - 지정된 키 또는 값이 null 이며, 이 맵이 null 의 키 또는 값을 허가하지 않는 경우
IllegalArgumentException - 지정된 키 또는 값이 있는 프로퍼티이 원인으로, 이 맵에 그것들을 포함할 수 없는 경우

remove

public V  remove(Object  key)
키의 매핑이 있는 경우에, 그 매핑을 이 맵으로부터 삭제합니다 (임의의 오퍼레이션). k==null :key.equals(k)) 라고 하는 조건으로, 키 k 로부터 값 v 까지 매핑이 맵에 포함되는 경우, 이 매핑은 삭제됩니다. 맵은 이러한 매핑을 1 개만 포함합니다.

이 맵이 이전에 이 키를 관련짓고 있던 값을 돌려줍니다. 키에 대한 매핑이 맵에 없었던 경우는 null 를 돌려줍니다.

이 맵이 null 치를 허가하는 경우, 반환값의 null 는, 맵이 키의 매핑을 보관 유지하고 있지 않았던 것을 나타낸다고는인가 선. 즉, 맵이 명시적으로 키를 null 에 맵 하고 있던 가능성도 있습니다.

한 번 호출이 돌아가면, 맵은 지정된 키의 매핑을 포함하지 않습니다.

이 구현은 entrySet() 의 내용을 차례차례 조사해 지정된 키를 가지는 엔트리를 검색합니다. 그러한 엔트리가 발견되었을 경우는, 엔트리의 값을 구현의 getValue 오퍼레이션으로 취득해, 엔트리를 컬렉션과 그 기본으로 되는 맵으로부터 삭제합니다. 삭제는 반복자의 remove 오퍼레이션을 사용해, 보존된 값이 돌려주어집니다. 목적의 엔트리가 발견되지 않고 반복이 종료했을 경우는,null 를 돌려줍니다. 이 구현에서는, 맵의 사이즈에 정비례 한 시간이 필요한 일로 주의해 주세요. 많은 구현은, 이 메소드를 오버라이드(override) 합니다.

entrySet 반복자가 remove 메소드를 지원하지 않고, 이 맵이 지정된 키의 매핑을 보관 유지하는 경우는, 이 구현은 UnsupportedOperationException 를 throw 합니다.

정의:
인터페이스 Map <K ,V > 내의 remove
파라미터:
key - 매핑이 맵으로부터 삭제되는 키
반환값:
key 에 이전에 관련지을 수 있고 있던 값. key 의 매핑이 존재하지 않았던 경우는 null.
예외:
UnsupportedOperationException - remove 오퍼레이션이 이 맵으로 지원되지 않는 경우
ClassCastException - 키가 맵에 적합하지 않는 형태의 경우 (생략 가능)
NullPointerException - 지정된 키가 null 이며, 이 맵이 null 키를 허가하지 않는 경우 (생략 가능)

putAll

public void putAll(Map <?  extends K ,?  extends V > m)
지정된 맵의 모든 매핑을 이 맵에 카피합니다 (임의의 오퍼레이션). 지정된 맵의 키 k 로부터 값 v 까지의 각 매핑에 관해서, 이 호출의 효과는, 맵으로 put(k, v) 를 호출했을 경우와 같습니다. 오퍼레이션의 진행중에, 지정된 맵이 변경되었을 경우의, 이 오퍼레이션의 동작은 정의되고 있지 않습니다.

이 구현은, 지정된 맵의 entrySet() 컬렉션의 내용을 차례차례 조사해 반복에 의해 각 엔트리가 돌려주어질 때 마다, 이 맵의 put 오퍼레이션을 1 회 호출합니다.

이 맵이 put 오퍼레이션을 지원하지 않고, 지정 맵이 빈 상태(empty)이 아닌 경우, 이 구현은 UnsupportedOperationException 를 throw 합니다.

정의:
인터페이스 Map <K ,V > 내의 putAll
파라미터:
m - 맵에 포함되는 매핑
예외:
UnsupportedOperationException - putAll 오퍼레이션이 이 맵으로 지원되지 않는 경우
ClassCastException - 지정된 맵내의 키 또는 값의 클래스가 원인으로, 맵에 포함할 수 없는 경우
NullPointerException - 지정된 맵이 null 인 경우, 또는 이 맵이 null 의 키 또는 값을 허가하지 않고, 지정된 맵에 null 의 키 또는 값이 포함되어 있는 경우
IllegalArgumentException - 지정된 맵내가 있는 키 또는 값이 있는 프로퍼티이 원인으로, 맵에 포함할 수 없는 경우

clear

public void clear()
맵으로부터 매핑을 모두 삭제합니다 (임의의 오퍼레이션). 이 호출이 돌아오면(자), 맵은 비웁니다.

이 구현은,entrySet(). clear() 를 호출합니다.

entrySetclear 오퍼레이션을 지원하지 않는 경우, 이 구현은 UnsupportedOperationException 를 throw 합니다.

정의:
인터페이스 Map <K ,V > 내의 clear
예외:
UnsupportedOperationException - clear 오퍼레이션이 이 맵으로 지원되지 않는 경우

keySet

public Set <K > keySet()
이 맵에 포함되는 키 Set 뷰를 돌려줍니다. 세트는 맵과 연동하고 있으므로, 맵에 대한 변경은 세트에 반영되어 또, 세트에 대한 변경은 맵에 반영됩니다. 세트의 반복 처리중으로 맵이 변경되었을 경우, 반복 처리의 결과는 정의되지 않습니다 (반복자 자신의 remove 오퍼레이션을 제외하다). 삭제는,Iterator.remove,Set.remove,removeAll,retainAll, 및 clear 의 각 오퍼레이션을 통해 실시합니다. Set 는,add 오퍼레이션이나 addAll 오퍼레이션은 지원하고 있습니다.

이 구현은,AbstractSet 를 서브 클래스화하는 세트를 돌려줍니다. 이 서브 클래스의 iterator 메소드는, 이 맵의 entrySet() 반복자의 「래퍼 객체」를 돌려줍니다. size 메소드는 이 맵의 size 메소드에 위양 해,contains 메소드는, 이 맵의 containsKey 메소드에 위양 합니다.

Set 는, 이 메소드가 최초로 불려 갔을 때에 작성되어 거기에 계속되는 모든 호출에 응해 돌려주어집니다. 동기는 일절 행해지지 않습니다. 이 때문에, 적지만, 이 메소드에의 복수의 호출에 대해서, 같은 Set 가 돌려주어지지 않을 가능성이 있습니다.

정의:
인터페이스 Map <K ,V > 내의 keySet
반환값:
맵에 포함되어 있는 키의 셋트뷰

values

public Collection <V > values()
이 맵에 포함되는 값 Collection 뷰를 돌려줍니다. 컬렉션은 맵과 연동하고 있으므로, 맵에 대한 변경은 컬렉션에 반영되어 또 컬렉션에 대한 변경은 맵에 반영됩니다. 컬렉션의 반복 처리중으로 맵이 변경되었을 경우, 반복 처리의 결과는 정의되지 않습니다 (반복자 자신의 remove 오퍼레이션을 제외하다). 컬렉션은 요소의 삭제를 지원하고 있어, 대응하는 매핑을 맵으로부터 삭제할 수 있습니다. 삭제는,Iterator.remove,Collection.remove,removeAll,retainAll, 및 clear 오퍼레이션을 통해 실시합니다. Set 는,add 오퍼레이션이나 addAll 오퍼레이션은 지원하고 있습니다.

이 구현은,AbstractCollection 를 서브 클래스화하는 컬렉션을 돌려줍니다. 이 서브 클래스의 iterator 메소드는, 이 맵의 entrySet() 반복자의 「래퍼 객체」를 돌려줍니다. size 메소드는 이 맵의 size 메소드에 위양 해,contains 메소드는, 이 맵의 containsValue 메소드에 위양 합니다.

컬렉션은, 이 메소드가 최초로 불려 갔을 때에 작성되어 거기에 계속되는 모든 호출에 응해 돌려주어집니다. 동기는 일절 행해지지 않습니다. 이 때문에, 적지만, 이 메소드에의 복수의 호출에 대해서, 같은 컬렉션이 돌려주어지지 않을 가능성이 있습니다.

정의:
인터페이스 Map <K ,V > 내의 values
반환값:
맵내에 포함되어 있는 값의 코레크션뷰

entrySet

public abstract Set <Map.Entry <K ,V >> entrySet()
인터페이스 Map 의 기술:
이 맵에 포함되는 맵 Set 뷰를 돌려줍니다. 세트는 맵과 연동하고 있으므로, 맵에 대한 변경은 세트에 반영되어 또, 세트에 대한 변경은 맵에 반영됩니다. 세트에 대한 반복의 처리중으로 맵이 변경되었을 경우는, 반복 처리의 결과는 정의되지 않습니다 (반복자 자신의 remove 오퍼레이션, 또는 반복자에 의해 반환되는 맵 엔트리에 대한 setValue 오퍼레이션을 제외하다). 세트는, 요소의 삭제를 지원하고 있어, 대응하는 매핑을 맵으로부터 삭제할 수 있습니다. 삭제는,Iterator.remove,Set.remove,removeAll,retainAll, 및 clear 의 각 오퍼레이션을 통해 실시합니다. Set 는,add 오퍼레이션이나 addAll 오퍼레이션은 지원하고 있습니다.

정의:
인터페이스 Map <K ,V > 내의 entrySet
반환값:
맵내에 보관 유지되고 있는 매핑의 셋트뷰

equals

public boolean equals(Object  o)
지정된 객체가 이 맵과 동일한지 어떤지를 비교합니다. 지정된 객체가 맵이며, 2 개의 맵이 같은 매핑을 나타내는 경우에 true 를 돌려줍니다. 즉,m1.entrySet(). equals(m2.entrySet()) 인 경우, 2 개의 맵 m1m2 는 같은 매핑을 나타냅니다. 이것에 의해,Map 인터페이스의 구현이 다른 경우에서도,equals 메소드가 올바르게 동작하는 것이 보증됩니다.

이 구현은, 지정된 객체가 이 맵 자신일지 어떨지를 최초로 조사합니다. 이 맵인 경우, 구현은 true 를 돌려주어 지정된 객체에 대해, 이 맵과 같은 사이즈의 맵일지 어떨지를 조사합니다. 같은 사이즈의 맵이 아닌 경우는 false 를 돌려줍니다. 같은 사이즈의 맵인 경우는, 이 맵의 entrySet 컬렉션의 내용을 차례차례 조사해, 지정된 맵에, 이 맵이 포함하고 있는 각 매핑이 포함되어 있는지 어떤지를 조사합니다. 지정된 맵에 그러한 매핑이 없는 경우는,false 가 돌려주어집니다. 반복이 완료했을 경우에 true 가 돌려주어집니다.

정의:
인터페이스 Map <K ,V > 내의 equals
오버라이드(override):
클래스 Object 내의 equals
파라미터:
o - 이 맵과 동일한지 어떤지를 비교하는 객체
반환값:
지정된 객체가 맵과 동일한 경우는 true
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()
맵의 해시 코드값를 돌려줍니다. 맵의 해시 코드는, 맵의 entrySet() 뷰에 있는 각 엔트리의 해시 코드의 합계입니다. 이것에 의해,Object.hashCode() 의 일반 규약으로 요구되는 대로, 임의의 2 개의 맵 m1m2 에 대해,m1.equals(m2) 의 경우 m1.hashCode() ==m2.hashCode() 가 됩니다.

이 구현은, 세트의 각 요소 (엔트리)의 hashCode() 를 호출해,entrySet() 의 내용을 차례차례 조사해 결과를 가산해 갈 것입니다.

정의:
인터페이스 Map <K ,V > 내의 hashCode
오버라이드(override):
클래스 Object 내의 hashCode
반환값:
맵의 해시 코드값
관련 항목:
Map.Entry.hashCode() , Object.equals(Object) , Set.equals(Object)

toString

public String  toString()
이 맵의 캐릭터 라인 표현을 돌려줍니다. 캐릭터 라인 표현은, 키와 값의 매핑을 맵의 entrySet 뷰의 반복자가 돌려준 순서에 안괄호 ("{}")로 둘러싸 가리키는 리스트입니다. 인접하는 매핑은, 문자 ", " (콤마와 공백 문자)에 의해 단락지어집니다. 각 키와 값의 매핑은, 키의 후에 등호 ("=")가 계속되어, 그 다음에 키와 관련지을 수 있는 값이 계속된다고 하는 형태로 draw 됩니다. 키와 값은,String.valueOf(Object) 를 실행했는지와 같이 캐릭터 라인에 변환됩니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
이 맵의 캐릭터 라인 표현

clone

protected Object  clone()
                throws CloneNotSupportedException 
AbstractMap 의 인스턴스의 shallow 복사를 돌려줍니다. 키와 값은, 그 자체는 복제되지 않습니다.

오버라이드(override):
클래스 Object 내의 clone
반환값:
이 맵의 shallow 복사
예외:
CloneNotSupportedException - 객체의 클래스가 Cloneable 인터페이스를 지원하고 있지 않는 경우. clone 메소드를 오버라이드(override) 한 서브 클래스도, 인스턴스를 복제할 수 없는 것을 나타내기 위해서(때문에) 이 예외를 throw 하는 일이 있는
관련 항목:
Cloneable

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 도 참조해 주세요.