|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
public interface Elements
프로그램 요소로 조작을 행하기 위한 유틸리티 메소드.
호환성에 관한 주: 플랫폼의 장래의 릴리스에서는, 이 인터페이스에 메소드가 추가될 가능성이 있습니다.
ProcessingEnvironment.getElementUtils()
메소드의 개요 | |
---|---|
List <? extends AnnotationMirror > |
getAllAnnotationMirrors (Element e)
상속되고 있을까 직접 존재하고 있을까에 관계없이, 요소의 모든 주석을 돌려줍니다. |
List <? extends Element > |
getAllMembers (TypeElement type)
상속되고 있을까 직접 선언되고 있을까에 관계없이, 형태 요소의 모든 멤버를 돌려줍니다. |
Name |
getBinaryName (TypeElement type)
형태 요소의 「바이너리명」을 돌려줍니다. |
String |
getConstantExpression (Object value)
프리미티브(primitive)치 또는 캐릭터 라인을 나타내는 「정수식」의 텍스트를 돌려줍니다. |
String |
getDocComment (Element e)
요소의 다큐멘테이션 ("Javadoc") 코멘트의 텍스트를 돌려줍니다. |
Map <? extends ExecutableElement ,? extends AnnotationValue > |
getElementValuesWithDefaults (AnnotationMirror a)
디폴트를 포함한 주석의 요소의 값을 돌려줍니다. |
Name |
getName (CharSequence cs)
인수와 같은 문자 순서를 가지는 이름을 돌려줍니다. |
PackageElement |
getPackageElement (CharSequence name)
완전 수식명이 지정된 패키지를 돌려줍니다. |
PackageElement |
getPackageOf (Element type)
요소의 패키지를 돌려줍니다. |
TypeElement |
getTypeElement (CharSequence name)
정규명이 지정된 형태 요소를 돌려줍니다. |
boolean |
hides (Element hider,
Element hidden)
형태, 메소드, 또는 필드가 다른 것을 덮어 가리고 있는지 어떤지를 테스트합니다. |
boolean |
isDeprecated (Element e)
요소가 비추천의 경우는 true 를 돌려줍니다. |
boolean |
overrides (ExecutableElement overrider,
ExecutableElement overridden,
TypeElement type)
지정된 형태의 멤버인 메소드가 다른 메소드를 오버라이드(override) 할지 어떨지를 테스트합니다. |
void |
printElements (Writer w,
Element ... elements)
요소의 표현을, 지정된 순서로, 지정된 라이터에 출력합니다. |
메소드의 상세 |
---|
PackageElement getPackageElement(CharSequence name)
name
- 완전 수식 패키지명. 이름이 없는 패키지의 경우는 ""
null
TypeElement getTypeElement(CharSequence name)
name
- 정규명
null
Map <? extends ExecutableElement ,? extends AnnotationValue > getElementValuesWithDefaults(AnnotationMirror a)
a
- 조사하는 대상의 주석
AnnotationMirror.getElementValues()
String getDocComment(Element e)
e
- 조사하는 대상의 요소
null
boolean isDeprecated(Element e)
true
를 돌려줍니다. 그렇지 않은 경우는 false
를 돌려줍니다.
e
- 조사하는 대상의 요소
true
. 그렇지 않은 경우는 false
Name getBinaryName(TypeElement type)
type
- 조사하는 대상의 형태 요소
TypeElement.getQualifiedName()
PackageElement getPackageOf(Element type)
type
- 조사하는 대상의 요소
List <? extends Element > getAllMembers(TypeElement type)
ElementFilter
의 메소드를 사용하면(자), 특정의 종류의 요소를 분리할 수 있습니다.
type
- 조사하는 대상의 형태
Element.getEnclosedElements()
List <? extends AnnotationMirror > getAllAnnotationMirrors(Element e)
e
- 조사하는 대상의 요소
Element.getAnnotationMirrors()
boolean hides(Element hider, Element hidden)
hider
- 선두의 요소hidden
- 2 번째의 요소
true
boolean overrides(ExecutableElement overrider, ExecutableElement overridden, TypeElement type)
무엇보다 단순하고 일반적인 사용법에서는,type
파라미터의 값은, 메소드를 오버라이드(override) 할 가능성이 있는 overrider
를 직접 둘러싸는 클래스 또는 인터페이스가 됩니다. 예를 들어,m1
가 String.hashCode
메소드를 나타내,m2
가 Object.hashCode
메소드를 나타낸다고 합니다. String
클래스내에서 m1
가 m2
를 오버라이드(override) 할지 어떨지를 다음과 같이 조사할 수가 있습니다. 실제는 오버라이드(override) 합니다.
assert elements.overrides(m1, m2, elements.getTypeElement("java.lang.String"));
한층 더 흥미로운 케이스로서 다음의 예가 있습니다. 형태 A
의 메소드는 똑같이 이름을 붙일 수 있었던 형태 B
의 메소드를 오버라이드(override) 하지 않습니다.
다만, 3 번째의 형태class A { public void m() {} }
interface B { void m(); }
...m1 = ...; // A.m
m2 = ...; // B.m
assert ! elements.overrides(m1, m2, elements.getTypeElement("A"));
C
의 멤버로서 참조되면(자),A
의 메소드는 B
의 메소드를 오버라이드(override) 합니다.
class C extends A implements B {}
...assert elements.overrides(m1, m2, elements.getTypeElement("C"));
overrider
- 오버라이드(override)을 실시할 가능성이 있는 선두의 메소드overridden
- 오버라이드(override) 될 가능성이 있는 2 번째의 메소드type
- 멤버인 선두의 메소드의 형태
true
String getConstantExpression(Object value)
value
- 프리미티브(primitive)치 또는 캐릭터 라인
IllegalArgumentException
- 인수가 프리미티브(primitive)치 또는 캐릭터 라인이 아닌 경우VariableElement.getConstantValue()
void printElements(Writer w, Element ... elements)
w
- 출력처의 라이터elements
- 출력하는 요소Name getName(CharSequence cs)
cs
- 이름으로서 반환되는 문자 순서
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.