JavaTM Platform
Standard Ed. 6

javax.management.openmbean
클래스 ArrayType<T>

java.lang.Object 
  상위를 확장 javax.management.openmbean.OpenType <T>
      상위를 확장 javax.management.openmbean.ArrayType<T>
모든 구현된 인터페이스:
Serializable


public class ArrayType<T>
extends OpenType <T>

ArrayType 클래스는, 「공개 데이터」치의 n 차원 배열인 모든 「공개 데이터」치를 기술하는 인스턴스를 가지는 「공개형」클래스입니다.

다음에, 유효한 ArrayType 인스턴스의 예를 나타냅니다.

 // 2-dimension array of java.lang.String
 ArrayType a1 = new ArrayType(2, SimpleType.STRING);

 // 1-dimension array of int
 ArrayType a2 = new ArrayType(SimpleType.INTEGER, true);

 // 1-dimension array of java.lang.Integer
 ArrayType a3 = new ArrayType(SimpleType.INTEGER, false);

 // 4-dimension array of int
 ArrayType a4 = new ArrayType(3, a2);

 // 4-dimension array of java.lang.Integer
 ArrayType a5 = new ArrayType(3, a3);

 // 1-dimension array of java.lang.String
 ArrayType a6 = new ArrayType(SimpleType.STRING, false);

 // 1-dimension array of long
 ArrayType a7 = new ArrayType(SimpleType.LONG, true);

 // 1-dimension array of java.lang.Integer
 ArrayType a8 = ArrayType.getArrayType(SimpleType.INTEGER);

 // 2-dimension array of java.lang.Integer
 ArrayType a9 = ArrayType.getArrayType(a8);

 // 2-dimension array of int
 ArrayType a10 = ArrayType.getPrimitiveArrayType(int[][]. class);

 // 3-dimension array of int
 ArrayType a11 = ArrayType.getArrayType(a10);

 // 1-dimension array of float
 ArrayType a12 = ArrayType.getPrimitiveArrayType(float[]. class);

 // 2-dimension array of float
 ArrayType a13 = ArrayType.getArrayType(a12);

 // 1-dimension array of javax.management.ObjectName
 ArrayType a14 = ArrayType.getArrayType(SimpleType.OBJECTNAME);

 // 2-dimension array of javax.management.ObjectName
 ArrayType a15 = ArrayType.getArrayType(a14);

 // 3-dimension array of java.lang.String
 ArrayType a16 = new ArrayType(3, SimpleType.STRING);

 // 1-dimension array of java.lang.String
 ArrayType a17 = new ArrayType(1, SimpleType.STRING);

 // 2-dimension array of java.lang.String
 ArrayType a18 = new ArrayType(1, a17);

 // 3-dimension array of java.lang.String
 ArrayType a19 = new ArrayType(1, a18);
 

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

필드의 개요
 
클래스 javax.management.openmbean. OpenType 로부터 상속된 필드
ALLOWED_CLASSNAMES , ALLOWED_CLASSNAMES_LIST
 
생성자 의 개요
ArrayType (int dimension, OpenType <? > elementType)
          dimension 차원의 요소 ( 「공개형」이 elementType 의 요소)의 배열인 「공개 데이터」를 기술하는 ArrayType 인스턴스를 구축합니다.
ArrayType (SimpleType <? > elementType, boolean primitiveArray)
          지정된 SimpleType 의 1 차원 ArrayType 인스턴스를 구축합니다.
 
메소드의 개요
 boolean equals (Object  obj)
          지정된 obj 파라미터와 이 ArrayType 인스턴스가 동일한지 어떤지를 비교합니다.
static
<E> ArrayType <E[]>
getArrayType (OpenType <E> elementType)
          ArrayType 인스턴스를, 형태 보증된 방법으로 작성합니다.
 int getDimension ()
          이 ArrayType 인스턴스에 의해 기술되는 배열의 차원을 돌려줍니다.
 OpenType <? > getElementOpenType ()
          이 ArrayType 인스턴스에 의해 기술된 배열내에 포함되는 요소치의 「공개형」을 돌려줍니다.
static
<T> ArrayType <T>
getPrimitiveArrayType (Class <T> arrayClass)
          ArrayType 인스턴스를, 형태 보증된 방법으로 작성합니다.
 int hashCode ()
          이 ArrayType 인스턴스의 해시 코드값를 돌려줍니다.
 boolean isPrimitiveArray ()
          이 공개형이 기술하는 공개 데이터값가 프리미티브(primitive) 배열의 경우는 true, 그렇지 않은 경우는false 를 돌려줍니다.
 boolean isValue (Object  obj)
          obj 가, 이 ArrayType 인스턴스의 값일지 어떨지를 테스트합니다.
 String toString ()
          이 ArrayType 인스턴스의 캐릭터 라인 표현을 돌려줍니다.
 
클래스 javax.management.openmbean. OpenType 로부터 상속된 메소드
getClassName , getDescription , getTypeName , isArray
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

ArrayType

public ArrayType(int dimension,
                 OpenType <? > elementType)
          throws OpenDataException 
dimension 차원의 요소 ( 「공개형」이 elementType 의 요소)의 배열인 「공개 데이터」를 기술하는 ArrayType 인스턴스를 구축합니다.

ArrayType 인스턴스상에서 getClassName 메소드를 호출하면(자),getElementOpenType(). getClassName() 의 호출에 의해 반환되는 배열 요소의 클래스명은 아니고,java.lang.ClassgetName 메소드에 따라, 기술하는 배열 인스턴스의 클래스명이 돌려주어집니다.

ArrayType 인스턴스의 형명에 대응하는 내부 필드도, 기술하는 배열 인스턴스의 클래스명으로 설정됩니다. 즉,getClassName 메소드와 getTypeName 메소드는 같은 캐릭터 라인치를 돌려줍니다. 이 ArrayType 인스턴스의 기술에 대응하는 내부 필드는, 다음의 템플릿에 따르는 캐릭터 라인치로 설정됩니다.

예로서 다음의 코드의 발췌를 참조해 주세요.

 ArrayType t = new ArrayType(3, SimpleType.STRING);
 System.out.println("array class name       = " + t.getClassName());
 System.out.println("element class name     = " + t.getElementOpenType(). getClassName());
 System.out.println("array type name        = " + t.getTypeName());
 System.out.println("array type description = " + t.getDescription());
 
다음의 내용이 출력됩니다.
 array class name       = [[[Ljava.lang.String;
 element class name     = java.lang.String
 array type name        = [[[Ljava.lang.String;
 array type description = 3-dimension array of java.lang.String
 
또, 다음의 코드도 상기의 코드와 등가이며, 출력은 같게 됩니다.
 ArrayType t1 = new ArrayType(1, SimpleType.STRING);
 ArrayType t2 = new ArrayType(1, t1);
 ArrayType t3 = new ArrayType(1, t2);
 System.out.println("array class name       = " + t3.getClassName());
 System.out.println("element class name     = " + t3.getElementOpenType(). getClassName());
 System.out.println("array type name        = " + t3.getTypeName());
 System.out.println("array type description = " + t3.getDescription());
 

파라미터:
dimension - 이 ArrayType 인스턴스에 의해 기술되는 배열의 차원. 1 이상
elementType - 이 ArrayType 인스턴스에 의해 기술되는 배열에 포함되는 요소치의 「공개형」. SimpleType,CompositeType, TabularType 의 몇개의 인스턴스, 또는 SimpleType, CompositeType, TabularType 의 어느쪽이든을 elementType 로서 가지는 다른 ArrayType 의 인스턴스
예외:
IllegalArgumentException - dimension 가 정의 정수가 아닌 경우
OpenDataException - elementType's className 가 공개 데이터에 허가된 Java 클래스명이 아니다 경우

ArrayType

public ArrayType(SimpleType <? > elementType,
                 boolean primitiveArray)
          throws OpenDataException 
지정된 SimpleType 의 1 차원 ArrayType 인스턴스를 구축합니다.

이 생성자 은,primitiveArraytrue 인 경우에, 원시형의 배열의 작성을 지원합니다.

프리미티브(primitive) 배열에서는,getElementOpenType() 메소드는, 원시형의 배열의 래퍼형에 대응하는 SimpleType 를 돌려줍니다.

ArrayType 인스턴스상에서 getClassName 메소드를 호출하면(자),getElementOpenType(). getClassName() 의 호출에 의해 반환되는 배열 요소의 클래스명은 아니고,java.lang.ClassgetName 메소드에 따라, 기술하는 배열 인스턴스의 클래스명이 돌려주어집니다.

ArrayType 인스턴스의 형명에 대응하는 내부 필드도, 기술하는 배열 인스턴스의 클래스명으로 설정됩니다. 즉,getClassName 메소드와 getTypeName 메소드는 같은 캐릭터 라인치를 돌려줍니다. 이 ArrayType 인스턴스의 기술에 대응하는 내부 필드는, 다음의 템플릿에 따르는 캐릭터 라인치로 설정됩니다.

예로서 다음의 코드의 발췌를 참조해 주세요.

 ArrayType t = new ArrayType(SimpleType.INTEGER, true);
 System.out.println("array class name       = " + t.getClassName());
 System.out.println("element class name     = " + t.getElementOpenType(). getClassName());
 System.out.println("array type name        = " + t.getTypeName());
 System.out.println("array type description = " + t.getDescription());
 
다음의 내용이 출력됩니다.
 array class name       = [I
 element class name     = java.lang.Integer
 array type name        = [I
 array type description = 1-dimension array of int
 

파라미터:
elementType - 이 ArrayType 인스턴스에 의해 기술되는 배열내에 포함된다 요소치의 SimpleType
primitiveArray - 이 배열이 프리미티브(primitive) 배열을 기술하는 경우는 true
예외:
IllegalArgumentException - dimension 가 정의 정수가 아닌 경우
OpenDataException - primitiveArraytrue 로, elementType 가 원시형의 유효한 SimpleType 는 아니다 경우
도입된 버젼:
1.6
메소드의 상세

getDimension

public int getDimension()
ArrayType 인스턴스에 의해 기술되는 배열의 차원을 돌려줍니다.

반환값:
차원

getElementOpenType

public OpenType <? > getElementOpenType()
ArrayType 인스턴스에 의해 기술된 배열내에 포함되는 요소치의 「공개형」을 돌려줍니다.

반환값:
요소의 형태

isPrimitiveArray

public boolean isPrimitiveArray()
이 공개형이 기술하는 공개 데이터값가 프리미티브(primitive) 배열의 경우는 true, 그렇지 않은 경우는false 를 돌려줍니다.

반환값:
이것이 프리미티브(primitive) 배열형인 경우는 true
도입된 버젼:
1.6

isValue

public boolean isValue(Object  obj)
obj 가, 이 ArrayType 인스턴스의 값일지 어떨지를 테스트합니다.

이 메소드는,obj 가 null 가 아닌 경우에 한정해 true 를 돌려줍니다. obj 는, 다음의 몇개의 조건이 채워지고 있는 경우, 배열이 됩니다.

정의:
클래스 OpenType <T > 내의 isValue
파라미터:
obj - 판정되는 객체
반환값:
obj 가 이 ArrayType 인스턴스의 값인 경우는 true

equals

public boolean equals(Object  obj)
지정된 obj 파라미터와 이 ArrayType 인스턴스가 동일한지 어떤지를 비교합니다.

2 개의 ArrayType 인스턴스는, 같은 차원, 요소의 공개형, 및 프리미티브(primitive) 배열 플래그를 가지는 배열 인스턴스를 기술하는 경우에 한정해 동일하다고 말할 수 있습니다.

정의:
클래스 OpenType <T > 내의 equals
파라미터:
obj - 이 ArrayType 인스턴스와 동일한지 어떤지를 비교하는 객체. objnull 의 경우, 또는 ArrayType 클래스의 인스턴스가 아닌 경우, 이 메소드는 false 를 돌려준다
반환값:
지정된 객체가 이 ArrayType 인스턴스와 같은 경우는 true
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()
ArrayType 인스턴스의 해시 코드값를 돌려줍니다.

ArrayType 인스턴스의 해시 코드는,equals 비교로 사용되는 모든 정보 요소 (차원, 요소의 공개형, 및 프리미티브(primitive) 배열 플래그)의 해시 코드의 합계가 됩니다. 프리미티브(primitive)치의 해시 코드는, 대응하는 boxed 형의 객체의 해시 코드입니다 (예를 들어 true 의 해시 코드는 Boolean.TRUE.hashCode()). 이 때문에,t1.equals(t2) 는, 2 개의 ArrayType 인스턴스 t1t2t1.hashCode() ==t2.hashCode() 가,Object.hashCode() 메소드의 일반 규약에 따르고 있는 것을 나타냅니다.

ArrayType 인스턴스는 불변으로, 이 인스턴스의 해시 코드는,hashCode 의 최초의 호출시에 1 회만 계산됩니다. 그 후의 호출에는, 같은 값이 돌려주어집니다.

정의:
클래스 OpenType <T > 내의 hashCode
반환값:
ArrayType 인스턴스의 해시 코드값
관련 항목:
Object.equals(java.lang.Object) , Hashtable

toString

public String  toString()
ArrayType 인스턴스의 캐릭터 라인 표현을 돌려줍니다.

이 캐릭터 라인 표현은, 이 클래스의 이름 (javax.management.openmbean.ArrayType), 형명, 차원, 이 인스턴스에 정의된 요소의 공개형 및 프리미티브(primitive) 배열 플래그로 구성됩니다.

ArrayType 인스턴스는 불변으로, 이 인스턴스의 캐릭터 라인 표현은,toString 의 최초의 호출시에 1 회만 계산됩니다. 그 후의 호출에는, 같은 값이 돌려주어집니다.

정의:
클래스 OpenType <T > 내의 toString
반환값:
ArrayType 인스턴스의 캐릭터 라인 표현

getArrayType

public static <E> ArrayType <E[]> getArrayType(OpenType <E> elementType)
                                   throws OpenDataException 
ArrayType 인스턴스를, 형태 보증된 방법으로 작성합니다.

다차원 배열은, 이 메소드를 필요한 회수 호출하는 것으로 구축할 수 있습니다.

같은 파라미터를 지정해 이 메소드를 2 회 호출했을 경우, 같은 객체가 반환되는지, 2 개의 동등의 (동일하지 않다) 객체가 돌려주어질 가능성이 있습니다.

예로서 다음의 코드의 발췌를 참조해 주세요.

 ArrayType t1 = ArrayType.getArrayType(SimpleType.STRING);
 ArrayType t2 = ArrayType.getArrayType(t1);
 ArrayType t3 = ArrayType.getArrayType(t2);
 System.out.println("array class name       = " + t3.getClassName());
 System.out.println("element class name     = " + t3.getElementOpenType(). getClassName());
 System.out.println("array type name        = " + t3.getTypeName());
 System.out.println("array type description = " + t3.getDescription());
 
다음의 내용이 출력됩니다.
 array class name       = [[[Ljava.lang.String;
 element class name     = java.lang.String
 array type name        = [[[Ljava.lang.String;
 array type description = 3-dimension array of java.lang.String
 

파라미터:
elementType - 이 ArrayType 인스턴스에 의해 기술된 배열내에 포함되는 요소치의 「공개형」. SimpleType,CompositeType, TabularType 의 몇개의 인스턴스, 또는 SimpleType, CompositeType, TabularType 의 어느쪽이든을 elementType 로서 가지는 다른 ArrayType 의 인스턴스
예외:
OpenDataException - elementType's className 가 공개 데이터에 허가된 Java 클래스명이 아니다 경우
도입된 버젼:
1.6

getPrimitiveArrayType

public static <T> ArrayType <T> getPrimitiveArrayType(Class <T> arrayClass)
ArrayType 인스턴스를, 형태 보증된 방법으로 작성합니다.

같은 파라미터를 지정해 이 메소드를 2 회 호출했을 경우, 같은 객체가 반환되는지, 2 개의 동등의 (동일하지 않다) 객체가 돌려주어질 가능성이 있습니다.

예로서 다음의 코드의 발췌를 참조해 주세요.

 ArrayType t = ArrayType.getPrimitiveArrayType(int[][][]. class);
 System.out.println("array class name       = " + t.getClassName());
 System.out.println("element class name     = " + t.getElementOpenType(). getClassName());
 System.out.println("array type name        = " + t.getTypeName());
 System.out.println("array type description = " + t.getDescription());
 
다음의 내용이 출력됩니다.
 array class name       = [[[I
 element class name     = java.lang.Integer
 array type name        = [[[I
 array type description = 3-dimension array of int
 

파라미터:
arrayClass - int[]. class, boolean[][]. class 등의 프리미티브(primitive) 배열 클래스. 반환되는 ArrayTypegetElementOpenType() 메소드는, 원시형의 배열의 래퍼형에 대응하는 SimpleType 를 돌려준다
예외:
IllegalArgumentException - arrayClass 가 프리미티브(primitive) 배열이 아닌 경우
도입된 버젼:
1.6

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