Класс CompositeType
- Все реализуемые интерфейсы:
Serializable
public class CompositeType extends OpenType<CompositeData>
CompositeType — это класс открытого типа, экземпляры которого описывают типы значений CompositeData.- С момента:
- 1.5
- См. также:
Краткое описание полей
Поля, объявленные в классе javax.management.openmbean.OpenType
ALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
CompositeType |
Создаёт экземпляр CompositeType, проверяя на корректность заданных параметров. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
containsKey |
Возвращает true, если этот экземпляр CompositeType определяет элемент с именем itemName. |
boolean |
equals |
Сравнивает указанный параметр obj с этим экземпляром CompositeType на равенство. |
String |
getDescription |
Возвращает описание элемента с именем itemName или null, если этот экземпляр CompositeType не определяет элемент с таким именем. |
OpenType |
getType |
Возвращает открытый тип элемента с именем itemName или null, если этот экземпляр CompositeType не определяет элемент с таким именем. |
int |
hashCode() |
Возвращает значение хэш-кода для этого экземпляра CompositeType. |
boolean |
isValue |
Проверяет, является ли obj значением, которое можно описать с помощью этого экземпляра CompositeType. |
Set |
keySet() |
Возвращает неизменяемый вид множества всех имён элементов, определённых этим экземпляром CompositeType. |
String |
toString() |
Возвращает строковое представление этого экземпляра CompositeType. |
Методы, объявленные в классе javax.management.openmbean.OpenType
getClassName, getDescription, getTypeName, isArray
Подробное описание конструкторов
CompositeType
public CompositeType(String typeName, String description, String[] itemNames, String[] itemDescriptions, OpenType<?>[] itemTypes) throws OpenDataException
CompositeType, проверяя корректность заданных параметров. Ограничения корректности описаны ниже для каждого параметра. Обратите внимание, что содержимое трёх массивов itemNames, itemDescriptions и itemTypes копируется внутри, поэтому любые последующие изменения этих массивов вызывающей стороной конструктора не повлияют на созданный экземпляр CompositeType.
Имя класса Java для значений составных данных, которые представляет этот тип (т.е. имя класса, возвращаемое методом getClassName), устанавливается в строковое значение, возвращаемое CompositeData.class.getName().
- Parameters:
-
typeName- Имя, присваиваемое типу составных данных, который представляет этот экземпляр; не может быть null или пустой строкой. -
description- Читабельное описание типа составных данных, который представляет этот экземпляр; не может быть null или пустой строкой. -
itemNames- Имена элементов, содержащихся в значениях составных данных, описываемых этим экземпляромCompositeType; не может быть null и должно содержать по крайней мере один элемент; ни один элемент не может быть null или пустой строкой. Обратите внимание, что порядок, в котором заданы имена элементов, не важен для различения экземпляровCompositeType; имена элементов хранятся внутри в отсортированном по возрастанию алфавитном порядке. -
itemDescriptions- Описания элементов, в том же порядке, что и itemNames, элементов, содержащихся в значениях составных данных, описываемых этим экземпляромCompositeType; должно иметь тот же размер, что и itemNames; ни один элемент не может быть null или пустой строкой. -
itemTypes- Экземпляры open type, в том же порядке, что и itemNames, описывающие элементы, содержащиеся в значениях составных данных, описываемых этим экземпляромCompositeType; должно иметь тот же размер, что и itemNames; ни один элемент не может быть null. - Throws:
-
IllegalArgumentException- Если typeName или description является null или пустой строкой, или itemNames или itemDescriptions или itemTypes является null, или любой элемент itemNames или itemDescriptions является null или пустой строкой, или любой элемент itemTypes является null, или itemNames или itemDescriptions или itemTypes не имеют одинакового размера. -
OpenDataException- Если itemNames содержит дублирующиеся имена элементов (чувствительно к регистру, но ведущие и хвостовые пробелы удаляются).
Подробное описание методов
containsKey
public boolean containsKey(String itemName)
true, если этот экземпляр CompositeType определяет элемент с именем itemName.- Parameters:
-
itemName- имя элемента. - Returns:
- true, если элемент с таким именем присутствует.
getDescription
public String getDescription(String itemName)
null, если этот экземпляр CompositeType не определяет элемент с именем itemName.- Parameters:
-
itemName- имя элемента. - Returns:
- описание.
getType
public OpenType<?> getType(String itemName)
null, если этот экземпляр CompositeType не определяет элемент с именем itemName.- Parameters:
-
itemName- имя элемента. - Returns:
- тип.
keySet
isValue
public boolean isValue(Object obj)
CompositeType. Если obj равно null или не является экземпляром javax.management.openmbean.CompositeData, то isValue возвращает false.
Если obj является экземпляром javax.management.openmbean.CompositeData, то пусть ct будет его CompositeType, как возвращается методом CompositeData.getCompositeType(). Результат равен true, если this совместим с ct. Это означает, что:
-
this.getTypeName()равноct.getTypeName(), и - нет имён элементов в
this, которых нет вct, и - для каждого элемента в
this, его тип совместим с типом соответствующего элемента вct.
Один TabularType совместим с другим
TabularType, если у них одинаковые typeName и список имён индексов, а тип строки первого совместим с типом строки второго.
Один ArrayType совместим с другим
ArrayType, если у них одинаковое размерность; оба являются примитивными массивами или ни один из них не является; и тип элемента первого совместим с типом элемента второго.
В остальных случаях, один OpenType совместим с другим OpenType только если они равны.
Эти правила означают, что дополнительные элементы могут быть добавлены в
CompositeData, не делая его невалидным для CompositeType, у которого этих элементов нет.
- Specified by:
-
isValuein classOpenType<CompositeData> - Parameters:
-
obj- значение, тип которого необходимо проверить на совместимость с этим экземпляромCompositeType. - Returns:
-
true, если obj является значением для этого типа составных данных,falseв противном случае.
equals
public boolean equals(Object obj)
obj параметр с этим экземпляром CompositeType на равенство. Два экземпляра CompositeType равны тогда и только тогда, когда истинны все следующие утверждения:
- их имена типов равны
- имена и типы их элементов равны
- Specified by:
-
equalsin classOpenType<CompositeData> - Parameters:
-
obj- объект для сравнения на равенство с этим экземпляромCompositeType; если obj являетсяnull, тоequalsвозвращаетfalse. - Returns:
-
true, если указанный объект равен этому экземпляруCompositeType. - See Also:
hashCode
public int hashCode()
CompositeType. Хэш-код экземпляра CompositeType — это сумма хэш-кодов всех элементов информации, используемых в сравнениях equals (т.е. имя, имена элементов, типы элементов). Это гарантирует, что t1.equals(t2) подразумевает, что t1.hashCode()==t2.hashCode() для любых двух экземпляров CompositeType t1 и t2, как требуется общим соглашением метода Object.hashCode().
Поскольку экземпляры CompositeType являются неизменяемыми, хэш-код для этого экземпляра вычисляется один раз при первом вызове hashCode, а затем возвращается то же значение при последующих вызовах.
toString
public String toString()
CompositeType. Строковое представление состоит из имени этого класса (т.е. javax.management.openmbean.CompositeType), имени типа для этого экземпляра и списка имён элементов и строкового представления типов этого экземпляра.
Поскольку экземпляры CompositeType являются неизменяемыми, строковое представление для этого экземпляра вычисляется один раз при первом вызове toString, а затем возвращается то же значение при последующих вызовах.
- Specified by:
-
toStringin classOpenType<CompositeData> - Returns:
- строковое представление этого экземпляра
CompositeType
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.management/javax/management/openmbean/CompositeType.html