Класс CompositeDataSupport
- java.lang.Object
-
- javax.management.openmbean.CompositeDataSupport
- Все реализуемые интерфейсы:
- Serializable, CompositeData
public class CompositeDataSupport extends Object implements CompositeData, Serializable
Класс CompositeDataSupport является классом открытых данных, который реализует интерфейс CompositeData.
- С:
- 1.5
- См. также:
- Форматированный вывод сериализации
Конструкторы
| Конструктор и описание |
|---|
CompositeDataSupport(CompositeType compositeType,
Map<String,?> items) Создаёт экземпляр |
CompositeDataSupport(CompositeType compositeType,
String[] itemNames,
Object[] itemValues) Создаёт экземпляр |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
containsKey(String key) Возвращает |
boolean |
containsValue(Object value) Возвращает |
boolean |
equals(Object obj) Сравнивает переданный параметр obj с этим экземпляром |
Object |
get(String key) Возвращает значение элемента, имя которого |
Object[] |
getAll(String[] keys) Возвращает массив значений элементов, имена которых заданы |
CompositeType |
getCompositeType() Возвращает тип композиции этого экземпляра данных композиции. |
int |
hashCode() Возвращает значение хэш-кода для этого экземпляра |
String |
toString() Возвращает строковое представление этого экземпляра |
Collection<?> |
values() Возвращает неизменяемый вид коллекции значений элементов, содержащихся в этом экземпляре |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
CompositeDataSupport
public CompositeDataSupport(CompositeType compositeType,
String[] itemNames,
Object[] itemValues)
throws OpenDataException Создаёт экземпляр CompositeDataSupport с указанным compositeType, значения элементов которого заданы параметром itemValues[], в том же порядке, что и в itemNames[]. Так как CompositeType не задаёт порядок элементов, параметр itemNames[] используется для указания порядка значений в itemValues[]. Элементы этого экземпляра CompositeDataSupport хранятся во внутренней структуре данных TreeMap, отсортированной по возрастанию лексикографического порядка их имён, для ускорения доступа к отдельным значениям элементов.
Конструктор проверяет, что все ограничения, перечисленные ниже для каждого параметра, удовлетворены, и выбрасывает соответствующее исключение в случае их нарушения.
- Параметры:
-
compositeType- тип составного объекта этого экземпляра составных данных; не должен быть null. -
itemNames-itemNamesдолжен содержать, в любом порядке, все имена элементов, определённые вcompositeType; порядок перечисления имён используется для сопоставления значений вitemValues[]; не должен быть null или пустым. -
itemValues- значения элементов, перечисленные в том же порядке, что и их соответствующие имена вitemNames; каждое значение элемента может быть null, но если оно не null, оно должно быть допустимым значением для открытого типа, определённого вcompositeTypeдля соответствующего элемента; размер должен быть таким же, как уitemNames; не должен быть null или пустым. - Исключения:
-
IllegalArgumentException-compositeTypeравен null, илиitemNames[]илиitemValues[]равны null или пустые, или один из элементов вitemNames[]равен null или пустой строке, илиitemNames[]иitemValues[]не имеют одинаковый размер. -
OpenDataException- размерitemNames[]илиitemValues[]отличается от количества элементов, определённых вcompositeType, или один из элементов вitemNames[]не существует как имя элемента, определённое вcompositeType, или одно из значений вitemValues[]не является допустимым значением для соответствующего элемента, как определено вcompositeType.
CompositeDataSupport
public CompositeDataSupport(CompositeType compositeType,
Map<String,?> items)
throws OpenDataException Создаёт экземпляр CompositeDataSupport с указанным compositeType, имена и соответствующие значения элементов которого заданы отображениями в map items. Этот конструктор преобразует ключи в массив строк, значения — в массив объектов и вызывает метод CompositeDataSupport(javax.management.openmbean.CompositeType, java.lang.String[], java.lang.Object[]).
- Параметры:
-
compositeType- тип составного объекта этого экземпляра составных данных; не должен быть null. -
items- отображения всех имён элементов и их значений;itemsдолжен содержать все имена элементов, определённые вcompositeType; не должен быть null или пустым. - Исключения:
-
IllegalArgumentException-compositeTypeравен null, илиitemsравен null или пустой, или один из ключей вitemsравен null или пустой строке. -
OpenDataException- размерitemsотличается от количества элементов, определённых вcompositeType, или один из ключей вitemsне существует как имя элемента, определённое вcompositeType, или одно из значений вitemsне является допустимым значением для соответствующего элемента, как определено вcompositeType. -
ArrayStoreException- один или несколько ключей вitemsне являются экземплярами классаjava.lang.String.
Методы
getCompositeType
public CompositeType getCompositeType()
Возвращает тип составного объекта этого экземпляра составных данных.
- Унаследовано от:
-
getCompositeTypeв интерфейсеCompositeData - Возвращает:
- тип этого CompositeData.
get
public Object get(String key)
Возвращает значение элемента с именем key.
- Унаследовано от:
-
getв интерфейсеCompositeData - Параметры:
-
key- имя элемента. - Возвращает:
- значение, связанное с этим ключом.
- Исключения:
-
IllegalArgumentException- еслиkeyравен null или пустой строке. -
InvalidKeyException- еслиkeyне является существующим именем элемента для этого экземпляраCompositeData.
getAll
public Object[] getAll(String[] keys)
Возвращает массив значений элементов, имена которых указаны в keys, в том же порядке, что и в keys.
- Унаследовано от:
-
getAllв интерфейсеCompositeData - Параметры:
-
keys- имена элементов. - Возвращает:
- значения, соответствующие ключам.
- Исключения:
-
IllegalArgumentException- если элемент вkeysравен null или пустой строке. -
InvalidKeyException- если элемент вkeysне является существующим именем элемента для этого экземпляраCompositeData.
containsKey
public boolean containsKey(String key)
Возвращает true тогда и только тогда, когда этот экземпляр CompositeData содержит элемент с именем key. Если key равен null или пустой строке, метод просто возвращает false.
- Унаследовано от:
-
containsKeyв интерфейсеCompositeData - Параметры:
-
key- ключ для проверки. - Возвращает:
- true, если этот экземпляр
CompositeDataсодержит ключ.
containsValue
public boolean containsValue(Object value)
Возвращает true тогда и только тогда, когда этот экземпляр CompositeData содержит элемент со значением value.
- Унаследовано от:
-
containsValueв интерфейсеCompositeData - Параметры:
-
value- значение для проверки. - Возвращает:
- true, если этот экземпляр
CompositeDataсодержит значение.
values
public Collection<?> values()
Возвращает неизменяемый вид коллекции значений элементов, содержащихся в этом экземпляре CompositeData. Итератор возвращаемой коллекции будет возвращать значения в порядке возрастания лексикографического порядка соответствующих имён элементов.
- Унаследовано от:
-
valuesв интерфейсеCompositeData - Возвращает:
- значения.
equals
public boolean equals(Object obj)
Сравнивает указанный параметр obj с этим экземпляром CompositeDataSupport на равенство.
Возвращает true тогда и только тогда, когда все следующие утверждения истинны:
- obj не равен null,
-
obj также реализует интерфейс
CompositeData, - их типы составных объектов равны
- их содержимое, т.е. пары (имя, значение), равны. Если значение, содержащееся в содержимом, является массивом, сравнение значений выполняется так, как если бы вы вызывали метод
deepEqualsдля массивов ссылочных типов объектов или соответствующую перегрузкуArrays.equals(e1,e2)для массивов примитивных типов
Это гарантирует, что этот метод equals работает должным образом для параметров obj, которые являются разными реализациями интерфейса CompositeData, с ограничениями, упомянутыми в методе equals интерфейса java.util.Collection.
- Унаследовано от:
-
equalsв интерфейсеCompositeData - Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект, сравниваемый на равенство с этим экземпляромCompositeDataSupport. - Возвращает:
-
trueесли указанный объект равен этому экземпляруCompositeDataSupport. - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает значение хэш-кода для этого экземпляра CompositeDataSupport.
Хэш-код экземпляра CompositeDataSupport — это сумма хэш-кодов всех элементов информации, используемых в сравнениях equals (т.е. его тип составного объекта и все значения элементов).
Это гарантирует, что t1.equals(t2) подразумевает, что t1.hashCode()==t2.hashCode() для любых двух экземпляров CompositeDataSupport t1 и t2, как требуется общим соглашением метода Object.hashCode().
Хэш-код каждого значения элемента добавляется к возвращаемому хэш-коду. Если значение элемента является массивом, его хэш-код получается так, как будто вы вызываете метод deepHashCode для массивов ссылочных типов объектов или соответствующую перегрузку Arrays.hashCode(e) для массивов примитивных типов.
- Унаследовано от:
-
hashCodeв интерфейсеCompositeData - Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого экземпляра
CompositeDataSupport - См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
toString
public String toString()
Возвращает строковое представление этого экземпляра CompositeDataSupport.
Строковое представление состоит из имени этого класса (например, javax.management.openmbean.CompositeDataSupport), строкового представления типа составного объекта этого экземпляра и строкового представления содержимого (т.е. список сопоставлений itemName=itemValue).
- Унаследовано от:
-
toStringв интерфейсеCompositeData - Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого экземпляра
CompositeDataSupport
© 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.