Класс PropertyDescriptor

Прямые известные подклассы:
IndexedPropertyDescriptor
public class PropertyDescriptor
extends FeatureDescriptor

Класс PropertyDescriptor описывает одно свойство, которое Java Bean экспортирует через пару методов-аксессоров.

С момента:
1.1

Конструкторы

Конструктор Описание
PropertyDescriptor​(String propertyName, Class<?> beanClass)

Создаёт PropertyDescriptor для свойства, следующего стандартной Java-конвенции, с методами-аксессорами getFoo и setFoo.

PropertyDescriptor​(String propertyName, Class<?> beanClass, String readMethodName, String writeMethodName)

Этот конструктор принимает имя простого свойства и имена методов для чтения и записи свойства.

PropertyDescriptor​(String propertyName, Method readMethod, Method writeMethod)

Этот конструктор принимает имя простого свойства и объекты Method для чтения и записи свойства.

Методы

Модификатор и тип Метод Описание
PropertyEditor createPropertyEditor​(Object bean)

Создаёт экземпляр редактора свойств, используя текущий класс редактора свойств.

boolean equals​(Object obj)

Сравнивает этот PropertyDescriptor с указанным объектом.

Class<?> getPropertyEditorClass()

Получает явный класс PropertyEditor, зарегистрированный для этого свойства.

Class<?> getPropertyType()

Возвращает информацию о типе Java для свойства.

Method getReadMethod()

Возвращает метод, который должен использоваться для чтения значения свойства.

Method getWriteMethod()

Возвращает метод, который должен использоваться для записи значения свойства.

int hashCode()

Возвращает хеш-код объекта.

boolean isBound()

Обновления "связанных" свойств вызывают событие "PropertyChange" при изменении свойства.

boolean isConstrained()

Попытки обновления "ограниченных" свойств вызывают событие "VetoableChange" при изменении свойства.

void setBound​(boolean bound)

Обновления "связанных" свойств вызывают событие "PropertyChange" при изменении свойства.

void setConstrained​(boolean constrained)

Попытки обновления "ограниченных" свойств вызывают событие "VetoableChange" при изменении свойства.

void setPropertyEditorClass​(Class<?> propertyEditorClass)

Обычно редакторы свойств находятся с помощью PropertyEditorManager.

void setReadMethod​(Method readMethod)

Устанавливает метод, который должен использоваться для чтения значения свойства.

void setWriteMethod​(Method writeMethod)

Устанавливает метод, который должен использоваться для записи значения свойства.

Методы, объявленные в классе java.beans.FeatureDescriptor

attributeNames, getDisplayName, getName, getShortDescription, getValue, isExpert, isHidden, isPreferred, setDisplayName, setExpert, setHidden, setName, setPreferred, setShortDescription, setValue, toString

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Конструкторы

PropertyDescriptor

public PropertyDescriptor(String propertyName,
                          Class<?> beanClass)
                   throws IntrospectionException

Создаёт PropertyDescriptor для свойства, следующего стандартной Java-конвенции, имеющего методы-аксессоры getFoo и setFoo. Таким образом, если имя аргумента "fred", предполагается, что метод записи — "setFred", а метод чтения — "getFred" (или "isFred" для булевого свойства). Обратите внимание, что имя свойства должно начинаться с строчной буквы, которая будет прописной в именах методов.

Параметры:
propertyName - Программное имя свойства.
beanClass - Объект класса целевого компонента. Например, sun.beans.OurButton.class.
Исключения:
IntrospectionException - если во время интроспекции произошла ошибка.

PropertyDescriptor

public PropertyDescriptor(String propertyName,
                          Class<?> beanClass,
                          String readMethodName,
                          String writeMethodName)
                   throws IntrospectionException

Этот конструктор принимает имя простого свойства и имена методов для чтения и записи свойства.

Параметры:
propertyName - Программное имя свойства.
beanClass - Объект класса целевого компонента. Например, sun.beans.OurButton.class.
readMethodName - Имя метода, используемого для чтения значения свойства. Может быть null, если свойство только для записи.
writeMethodName - Имя метода, используемого для записи значения свойства. Может быть null, если свойство только для чтения.
Исключения:
IntrospectionException - если во время интроспекции произошла ошибка.

PropertyDescriptor

public PropertyDescriptor(String propertyName,
                          Method readMethod,
                          Method writeMethod)
                   throws IntrospectionException

Этот конструктор принимает имя простого свойства и объекты Method для чтения и записи свойства.

Параметры:
propertyName - Программное имя свойства.
readMethod - Метод, используемый для чтения значения свойства. Может быть null, если свойство только для записи.
writeMethod - Метод, используемый для записи значения свойства. Может быть null, если свойство только для чтения.
Исключения:
IntrospectionException - если во время интроспекции произошла ошибка.

Методы

getPropertyType

public Class<?> getPropertyType()

Возвращает информацию о типе Java для свойства. Обратите внимание, что объект Class может описывать примитивные типы Java, такие как int. Этот тип возвращается методом чтения или используется как тип параметра метода записи. Возвращает null если свойство индексировано и не поддерживает доступ без индексации.

Возвращаемое значение:
объект Class, представляющий информацию о типе Java, или null если тип определить невозможно

getReadMethod

public Method getReadMethod()

Получает метод, который должен использоваться для чтения значения свойства.

Возвращаемое значение:
Метод, который должен использоваться для чтения значения свойства. Может вернуть null, если свойство недоступно для чтения.

setReadMethod

public void setReadMethod(Method readMethod)
                   throws IntrospectionException

Устанавливает метод, который должен использоваться для чтения значения свойства.

Параметры:
readMethod - Новый метод чтения.
Исключения:
IntrospectionException - если метод чтения некорректен
С момента:
1.2

getWriteMethod

public Method getWriteMethod()

Получает метод, который должен использоваться для записи значения свойства.

Возвращаемое значение:
Метод, который должен использоваться для записи значения свойства. Может вернуть null, если свойство недоступно для записи.

setWriteMethod

public void setWriteMethod(Method writeMethod)
                    throws IntrospectionException

Устанавливает метод, который должен использоваться для записи значения свойства.

Параметры:
writeMethod - Новый метод записи.
Исключения:
IntrospectionException - если метод записи некорректен
С момента:
1.2

isBound

public boolean isBound()

Обновления «связанных» свойств вызовут событие «PropertyChange» при изменении свойства.

Возвращаемое значение:
True, если это связанное свойство.

setBound

public void setBound(boolean bound)

Обновления «связанных» свойств вызовут событие «PropertyChange» при изменении свойства.

Параметры:
bound - True, если это связанное свойство.

isConstrained

public boolean isConstrained()

Попытки обновления «ограниченных» свойств вызовут событие «VetoableChange» при изменении свойства.

Возвращаемое значение:
True, если это ограниченное свойство.

setConstrained

public void setConstrained(boolean constrained)

Попытки обновления «ограниченных» свойств вызовут событие «VetoableChange» при изменении свойства.

Параметры:
constrained - True, если это ограниченное свойство.

setPropertyEditorClass

public void setPropertyEditorClass(Class<?> propertyEditorClass)

Обычно PropertyEditor находятся с помощью PropertyEditorManager. Однако, если по какой-то причине вам нужно связать определённый PropertyEditor с данным свойством, вы можете сделать это с помощью этого метода.

Параметры:
propertyEditorClass - Класс желаемого PropertyEditor.

getPropertyEditorClass

public Class<?> getPropertyEditorClass()

Получает любой явным образом зарегистрированный класс PropertyEditor для этого свойства.

Возвращаемое значение:
Любой явным образом зарегистрированный класс PropertyEditor для этого свойства. Обычно возвращает "null", указывая, что нет специального редактора, поэтому для поиска подходящего PropertyEditor нужно использовать PropertyEditorManager.

createPropertyEditor

public PropertyEditor createPropertyEditor(Object bean)

Создаёт экземпляр редактора свойств, используя текущий класс редактора свойств.

Если класс редактора свойств имеет публичный конструктор, принимающий объект Object, то он будет вызван, используя компонент bean в качестве аргумента. В противном случае вызывается конструктор по умолчанию.

Параметры:
bean - исходный объект
Возвращаемое значение:
экземпляр редактора свойств или null, если редактор свойств не определён или не может быть создан
С момента:
1.5

equals

public boolean equals(Object obj)

Сравнивает этот PropertyDescriptor с указанным объектом. Возвращает true, если объекты одинаковы. Два PropertyDescriptor равны, если методы чтения, записи, типы свойств, редактор свойств и флаги эквивалентны.

Переопределяет:
equals в классе Object
Параметры:
obj - объект-ссылка для сравнения.
Возвращаемое значение:
true если этот объект такой же, как аргумент obj; false в противном случае.
С момента:
1.4
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает значение хэш-кода для объекта. См. Object.hashCode() для полного описания.

Переопределяет:
hashCode в классе Object
Возвращаемое значение:
значение хэш-кода для этого объекта.
С момента:
1.5
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/PropertyDescriptor.html

Spec-Zone .ru
спецификации, руководства, описания, API