|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface Elements
Примечание совместимости: Методы могут быть добавлены к этому интерфейсу в будущих выпусках платформы.
ProcessingEnvironment.getElementUtils()| Модификатор и Тип | Метод и Описание |
|---|---|
List<? extends AnnotationMirror> |
getAllAnnotationMirrors(Element e)
Возвраты все аннотации элемента, или наследованный или непосредственно существующий.
|
List<? extends Element> |
getAllMembers(TypeElement type)
Возвраты все элементы элемента типа, или наследованный или объявленный непосредственно.
|
Имя |
getBinaryName(TypeElement type)
Возвращает двоичное имя элемента типа.
|
Строка |
getConstantExpression(Object value)
Возвращает текст константного выражения, представляющего примитивное значение или строку.
|
Строка |
getDocComment(Element e)
Возвращает текст документации ("Javadoc") комментарий элемента.
|
Map<? extends ExecutableElement,? extends AnnotationValue> |
getElementValuesWithDefaults(AnnotationMirror a)
Возвращает значения элементов аннотации, включая значения по умолчанию.
|
Имя |
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 если элемент осуждается, false иначе. |
boolean |
isFunctionalInterface(TypeElement type)
Возвраты
true если элемент типа является функциональным интерфейсом, false иначе. |
boolean |
overrides(ExecutableElement overrider, ExecutableElement overridden, TypeElement type)
Тесты, переопределяет ли один метод, как элемент данного типа, другой метод.
|
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 - второй элементtrue если и только если первый элемент скрывает второеboolean overrides(ExecutableElement overrider, ExecutableElement overridden, TypeElement type)
В самом простом и самом типичном использовании, значении type параметр просто будет class или соединит интерфейсом с непосредственно включением overrider (возможно переопределяющий метод). Например, предположить m1 представляет метод String.hashCode и m2 представляет Object.hashCode. Мы можем тогда спросить ли m1 переопределения m2 в пределах class String (это делает):
assert elements.overrides(m1, m2, elements.getTypeElement("java.lang.String"));
Более интересный случай может быть иллюстрирован следующим примером в который метод в типе A не переопределяет подобно-именованный метод в типе B: Когда просматривающийся как элемент третьего типа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: class C extends A implements B {}
...
assert elements.overrides(m1, m2, elements.getTypeElement("C"));
overrider - первый метод, возможный сверхнаездникoverridden - второй метод, возможно будучи переопределеннымtype - типом которого первый метод является элементомtrue если и только если первый метод переопределяет второеString getConstantExpression(Object value)
value - примитивное значение или строкаIllegalArgumentException - если параметром не является примитивное значение или строкаVariableElement.getConstantValue()void printElements(Writer w, Element... elements)
w - писатель, чтобы напечатать вывод кelements - элементы, чтобы напечататьName getName(CharSequence cs)
cs - символьная последовательность, чтобы возвратиться как имяboolean isFunctionalInterface(TypeElement type)
true если элемент типа является функциональным интерфейсом, false иначе.type - исследуемый элемент типаtrue если элемент является функциональным интерфейсом, false иначе
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92