Spec-Zone.ru › OpenJDK 24

Класс XMLGregorianCalendar

java.lang.Object
javax.xml.datatype.XMLGregorianCalendar
Все реализованные интерфейсы:
Cloneable
public abstract class XMLGregorianCalendar extends Object implements Cloneable

Представление типов данных даты/времени W3C XML Schema 1.0. В частности, эти типы данных даты/времени являются DatatypeConstants.DATETIME, DatatypeConstants.TIME, DatatypeConstants.DATE, DatatypeConstants.GYEARMONTH, DatatypeConstants.GMONTHDAY, DatatypeConstants.GYEAR, DatatypeConstants.GMONTH и DatatypeConstants.GDAY, определённых в пространстве имён XML "http://www.w3.org/2001/XMLSchema". Эти типы данных нормативно определены в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7-14.

В таблице ниже приведено сопоставление полей типа данных даты/времени XML Schema 1.0 и полей этого класса. Также в ней подытожены ограничения значений для полей даты и времени, определённые в W3C XML Schema 1.0 Часть 2, Приложение D, Форматы дат и времени ISO 8601.

Сопоставление полей типа данных даты/времени между XML Schema 1.0 и Java представлением
Поле типа данных
XML Schema 1.0
Связанный(е)
доступ(ы) к
XMLGregorianCalendar
Диапазон значений
год getYear() + getEon() или
getEonAndYear()
getYear() это значение от -(10^9-1) до (10^9)-1 или DatatypeConstants.FIELD_UNDEFINED.
getEon() — значение года высшего порядка в миллиардах лет.
getEon() имеет значения больше или равно (10^9) или меньше или равно -(10^9). Значение null указывает, что поле не определено.
Учитывая, что в ошибках XML Schema 1.0 указано, что год ноль будет допустимым лексическим значением в будущей версии XML Schema, этот класс позволяет установить значение поля «год» в ноль. В противном случае значение поля «год» обрабатывается точно так, как описано в исправлениях и [ISO-8601-1988]. Обратите внимание, что валидация W3C XML Schema 1.0 не допускает значения поля «год» равного нулю.
месяц getMonth() От 1 до 12 или DatatypeConstants.FIELD_UNDEFINED
день getDay() Независимо от месяца, максимальный диапазон — от 1 до 31 или DatatypeConstants.FIELD_UNDEFINED.
Нормативные ограничения значений, связанные со значением поля месяца, указаны в W3C XML Schema 1.0 Часть 2, Приложение D.
час getHour() От 0 до 23 или DatatypeConstants.FIELD_UNDEFINED. Значение часа 24 разрешено устанавливать в лексическом пространстве при условии, что значения полей «минуты» и «секунды» равны нулю. Однако значение часа 24 не допускается в пространстве значений и будет преобразовано для представления значения первого момента следующего дня в соответствии с XML Schema Часть 2: Типы данных, Второе издание, 3.2 Примитивные типы данных.
минута getMinute() От 0 до 59 или DatatypeConstants.FIELD_UNDEFINED
секунда getSecond() + getMillisecond()/1000 или
getSecond() + getFractionalSecond()
getSecond() от 0 до 60 или DatatypeConstants.FIELD_UNDEFINED.
(Примечание: 60 допустимо только для високосной секунды.)
getFractionalSecond() допускает бесконечную точность в диапазоне от 0,0 до 1,0, когда определено getSecond().
FractionalSecond является необязательным и имеет значение null, когда оно не определено.
getMillisecond() — удобная миллисекундная точность значения getFractionalSecond().
часовой пояс getTimezone() Количество минут или DatatypeConstants.FIELD_UNDEFINED. Диапазон значений от -14 часов (-14 * 60 минут) до 14 часов (14 * 60 минут).

Все ограничения максимального значения пространства для полей в таблице выше проверяются методами фабрики, DatatypeFactory, методами-сеттерами и методами парсинга этого класса. IllegalArgumentException выбрасывается, когда значение параметра находится за пределами ограничения значения для поля или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar (например, если указано 31 июня).

Для этого класса определены следующие операции:

  • методы доступа/изменения для независимых полей даты/времени
  • преобразование между этим классом и лексическим представлением W3C XML Schema 1.0, toString(), DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation)
  • преобразование между этим классом и GregorianCalendar, toGregorianCalendar(java.util.TimeZone timezone, java.util.Locale aLocale, XMLGregorianCalendar defaults), DatatypeFactory
  • метод сравнения частичного порядка, compare(XMLGregorianCalendar xmlGregorianCalendar)
  • equals(Object) определено относительно compare(XMLGregorianCalendar xmlGregorianCalendar).
  • операция сложения с экземпляром Duration, как определено в W3C XML Schema 1.0 Часть 2, Приложение E, Добавление интервалов к датам и времени.
С:
1.5
См. также:
  • Duration
  • DatatypeFactory

Краткое описание конструкторов

Конструктор Описание
XMLGregorianCalendar()
Конструктор по умолчанию без аргументов.

Краткое описание методов

Модификатор и тип Метод Описание
abstract void add(Duration duration)
Добавить duration к этому экземпляру.
abstract void clear()
Сбросить все поля в undefined.
abstract Object clone()
Создает и возвращает копию этого объекта.
abstract int compare(XMLGregorianCalendar xmlGregorianCalendar)
Сравнивает два экземпляра типов данных даты/времени W3C XML Schema 1.0 в соответствии с отношением частичного порядка, определённым в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7.3, Отношение порядка на dateTime.
boolean equals(Object obj)
Сравнивает этот календарь с указанным объектом.
abstract int getDay()
Возвращает день месяца или DatatypeConstants.FIELD_UNDEFINED.
abstract BigInteger getEon()
Возвращает старший компонент для поля типа данных dateTime XML Schema 1.0 для year.
abstract BigInteger getEonAndYear()
Возвращает поле типа данных dateTime XML Schema 1.0 для year.
abstract BigDecimal getFractionalSecond()
Возвращает дробную часть секунды.
abstract int getHour()
Возвращает час или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.
int getMillisecond()
Возвращает миллисекундную точность getFractionalSecond().
abstract int getMinute()
Возвращает минуту часа или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.
abstract int getMonth()
Возвращает месяц этого календаря или DatatypeConstants.FIELD_UNDEFINED.
abstract int getSecond()
Возвращает секунду минуты или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.
abstract int getTimezone()
Возвращает смещение часового пояса в минутах или DatatypeConstants.FIELD_UNDEFINED, если это необязательное поле не определено.
abstract TimeZone getTimeZone(int defaultZoneoffset)
Возвращает java.util.TimeZone для этого класса.
abstract QName getXMLSchemaType()
Возвращает имя типа даты/времени XML Schema, которому соответствует этот экземпляр.
abstract int getYear()
Возвращает младший компонент для поля типа данных dateTime XML Schema 1.0 для year или DatatypeConstants.FIELD_UNDEFINED.
int hashCode()
Возвращает хэш-код, согласованный с определением метода equals.
abstract boolean isValid()
Проверяет экземпляр на соответствие ограничениям getXMLSchemaType().
abstract XMLGregorianCalendar normalize()
Нормализует этот экземпляр до UTC.
abstract void reset()
Сбрасывает этот XMLGregorianCalendar до исходных значений.
abstract void setDay(int day)
Устанавливает количество дней в месяце.
abstract void setFractionalSecond(BigDecimal fractional)
Устанавливает дробную часть секунды.
abstract void setHour(int hour)
Устанавливает часы.
abstract void setMillisecond(int millisecond)
Устанавливает миллисекунды.
abstract void setMinute(int minute)
Устанавливает минуты.
abstract void setMonth(int month)
Устанавливает месяц.
abstract void setSecond(int second)
Устанавливает секунды.
void setTime(int hour, int minute, int second)
Устанавливает время как единицу.
void setTime(int hour, int minute, int second, int millisecond)
Устанавливает время как единицу, включая необязательные миллисекунды.
void setTime(int hour, int minute, int second, BigDecimal fractional)
Устанавливает время как единицу, включая необязательные дробные секунды бесконечной точности.
abstract void setTimezone(int offset)
Устанавливает количество минут в смещении часового пояса.
abstract void setYear(int year)
Устанавливает год поля года XSD dateTime.
abstract void setYear(BigInteger year)
Устанавливает младший и старший компоненты поля года XSD dateTime.
abstract GregorianCalendar toGregorianCalendar()
Преобразует этот XMLGregorianCalendar в GregorianCalendar.
abstract GregorianCalendar toGregorianCalendar(TimeZone timezone, Locale aLocale, XMLGregorianCalendar defaults)
Преобразует этот XMLGregorianCalendar вместе с предоставленными параметрами в экземпляр GregorianCalendar.
String toString()
Возвращает представление String этого XMLGregorianCalendar Object.
abstract String toXMLFormat()
Возвращает лексическое представление экземпляра this.

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

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

Подробное описание конструкторов

XMLGregorianCalendar

public XMLGregorianCalendar()
Конструктор по умолчанию без аргументов.

Примечание: всегда используйте DatatypeFactory для создания экземпляра XMLGregorianCalendar. Не гарантируется, что конструктор этого класса создаст объект с согласованным состоянием, и он может быть удалён в будущем.

Подробное описание методов

clear

public abstract void clear()
Сброс всех полей в неопределённое состояние.

Устанавливает все целочисленные поля в DatatypeConstants.FIELD_UNDEFINED, а ссылочные поля — в null.

reset

public abstract void reset()
Сброс этого XMLGregorianCalendar до его исходных значений.

XMLGregorianCalendar сбрасывается до тех же значений, что и при создании с помощью DatatypeFactory.newXMLGregorianCalendar(), DatatypeFactory.newXMLGregorianCalendar(String lexicalRepresentation), DatatypeFactory.newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone), DatatypeFactory.newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone), DatatypeFactory.newXMLGregorianCalendar(GregorianCalendar cal), DatatypeFactory.newXMLGregorianCalendarDate(int year, int month, int day, int timezone), DatatypeFactory.newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone), DatatypeFactory.newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone) или DatatypeFactory.newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone).

reset() предназначен для повторного использования существующих XMLGregorianCalendar, экономя ресурсы, связанные с созданием новых XMLGregorianCalendar.

setYear

public abstract void setYear(BigInteger year)
Устанавливает младший и старший порядковый разряд поля года XSD dateTime.

Сбросить это поле можно, вызвав setter с параметром null.

Параметры:
year - ограничения значений, подробнее в таблице соответствия поля года.
Исключения:
IllegalArgumentException - если значение параметра year выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setYear

public abstract void setYear(int year)
Устанавливает год поля года XSD dateTime.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Примечание: если абсолютное значение параметра year меньше 10^9, компонент эпохи поля года XSD устанавливается в null этим методом.

Параметры:
year - ограничения значений подробнее в таблице соответствия поля года. Если год равен DatatypeConstants.FIELD_UNDEFINED, тогда эпоха устанавливается в null.

setMonth

public abstract void setMonth(int month)
Устанавливает месяц.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
month - ограничения значений, подробнее в таблице соответствия поля месяца.
Исключения:
IllegalArgumentException - если значение параметра month выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setDay

public abstract void setDay(int day)
Устанавливает количество дней в месяце.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
day - ограничения значений, подробнее в таблице соответствия поля дня.
Исключения:
IllegalArgumentException - если значение параметра day выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setTimezone

public abstract void setTimezone(int offset)
Устанавливает количество минут в часовом поясе.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
offset - ограничения значений, подробнее в таблице соответствия поля часового пояса.
Исключения:
IllegalArgumentException - если значение параметра offset выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setTime

public void setTime(int hour, int minute, int second)
Установка времени как единого значения.
Параметры:
hour - ограничения значений, подробнее в таблице соответствия поля часа.
minute - ограничения значений, подробнее в таблице соответствия поля минуты.
second - ограничения значений, подробнее в таблице соответствия поля секунды.
Исключения:
IllegalArgumentException - если любое из значений параметров выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.
См. также:
  • setTime(int, int, int, BigDecimal)

setHour

public abstract void setHour(int hour)
Устанавливает час.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
hour - ограничения значений, подробнее в таблице соответствия поля часа.
Исключения:
IllegalArgumentException - если значение параметра hour выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setMinute

public abstract void setMinute(int minute)
Устанавливает минуты.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
minute - ограничения значений, подробнее в таблице соответствия поля минуты.
Исключения:
IllegalArgumentException - если значение параметра minute выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setSecond

public abstract void setSecond(int second)
Устанавливает секунды.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
second - ограничения значений, подробнее в таблице соответствия поля секунды.
Исключения:
IllegalArgumentException - если значение параметра second выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setMillisecond

public abstract void setMillisecond(int millisecond)
Устанавливает миллисекунды.

Сбросить это поле можно, вызвав setter со значением параметра DatatypeConstants.FIELD_UNDEFINED.

Параметры:
millisecond - ограничения значений, подробнее в таблице соответствия поля секунды.
Исключения:
IllegalArgumentException - если значение параметра millisecond выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setFractionalSecond

public abstract void setFractionalSecond(BigDecimal fractional)
Установка дробной части секунды.

Сбросить это поле можно, вызвав setter с параметром null.

Параметры:
fractional - ограничения значений, подробнее в таблице соответствия поля секунды.
Исключения:
IllegalArgumentException - если значение параметра fractional выходит за пределы ограничений, указанных в таблице соответствия полей даты и времени.

setTime

public void setTime(int hour, int minute, int second, BigDecimal fractional)
Устанавливает время как единицу, включая необязательные дробные секунды с бесконечной точностью.
Параметры:
hour - ограничения значений приведены в таблице соответствия полей даты/времени для часа.
minute - ограничения значений приведены в таблице соответствия полей даты/времени для минуты.
second - ограничения значений приведены в таблице соответствия полей даты/времени для секунды.
fractional - значение null указывает, что это необязательное поле не задано.
Исключения:
IllegalArgumentException - если любое из параметров находится за пределами ограничений значений для поля, как указано в таблице соответствия полей даты/времени.

setTime

public void setTime(int hour, int minute, int second, int millisecond)
Устанавливает время как единицу, включая необязательные миллисекунды.
Параметры:
hour - ограничения значений приведены в таблице соответствия полей даты/времени для часа.
minute - ограничения значений приведены в таблице соответствия полей даты/времени для минуты.
second - ограничения значений приведены в таблице соответствия полей даты/времени для секунды.
millisecond - значение DatatypeConstants.FIELD_UNDEFINED указывает, что это необязательное поле не задано.
Исключения:
IllegalArgumentException - если любое из параметров находится за пределами ограничений значений для поля, как указано в таблице соответствия полей даты/времени.

getEon

public abstract BigInteger getEon()
Возвращает старшую часть для поля типа данных dateTime XML Schema 1.0 для year. null, если эта необязательная часть поля года не определена.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для года.

Возвращает:
Эон этого XMLGregorianCalendar. Возвращаемое значение является целым числом, кратным 10^9.
См. также:
  • getYear()
  • getEonAndYear()

getYear

public abstract int getYear()
Возвращает младшую часть для поля типа данных dateTime XML Schema 1.0 для year или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для года.

Возвращает:
Год этого XMLGregorianCalendar.
См. также:
  • getEon()
  • getEonAndYear()

getEonAndYear

public abstract BigInteger getEonAndYear()
Возвращает поле типа данных dateTime XML Schema 1.0 для year.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для года.

Возвращает:
сумму eon и BigInteger.valueOf(year), когда оба поля определены. Если определено только year, возвращается оно. Если ни eon, ни year не определены, возвращается null.
См. также:
  • getEon()
  • getYear()

getMonth

public abstract int getMonth()
Возвращает месяц этого календаря или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для месяца.

Возвращает:
Месяц этого XMLGregorianCalendar, от 1 до 12.

getDay

public abstract int getDay()
Возвращает день месяца или DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для дня.

Возвращает:
День месяца этого XMLGregorianCalendar, от 1 до 31.
См. также:
  • setDay(int)

getTimezone

public abstract int getTimezone()
Возвращает смещение часового пояса в минутах или DatatypeConstants.FIELD_UNDEFINED, если это необязательное поле не определено.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для часового пояса.

Возвращает:
Смещение часового пояса в минутах этого XMLGregorianCalendar.
См. также:
  • setTimezone(int)

getHour

public abstract int getHour()
Возвращает час дня или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для часа.

Возвращает:
Час дня этого XMLGregorianCalendar, от 0 до 23.
См. также:
  • setTime(int, int, int)

getMinute

public abstract int getMinute()
Возвращает минуты часа или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для минуты.

Возвращает:
Минуты часа этого XMLGregorianCalendar, от 0 до 59.
См. также:
  • setTime(int, int, int)

getSecond

public abstract int getSecond()
Возвращает секунды минуты или DatatypeConstants.FIELD_UNDEFINED, если это поле не определено. Когда это поле не определено, необязательное дробное поле xs:dateTime, представленное getFractionalSecond() и getMillisecond(), не должно быть определено.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для секунды.

Возвращает:
Секунды минуты этого XMLGregorianCalendar, от 0 до 59.
См. также:
  • getFractionalSecond()
  • getMillisecond()
  • setTime(int, int, int)

getMillisecond

public int getMillisecond()
Возвращает миллисекундную точность getFractionalSecond().

Этот метод представляет собой удобный доступ к значению дробной секунды с бесконечной точностью, возвращаемому getFractionalSecond(). Возвращаемое значение — это значение getFractionalSecond(), округленное вниз до миллисекунд. Когда getFractionalSecond() возвращает null, этот метод должен возвращать DatatypeConstants.FIELD_UNDEFINED.

Ограничения значений для этого значения приведены в таблице соответствия полей даты/времени для секунды.

Возвращает:
Миллисекундная точность этого XMLGregorianCalendar.
См. также:
  • getFractionalSecond()
  • setTime(int, int, int)

getFractionalSecond

public abstract BigDecimal getFractionalSecond()
Возвращает дробные секунды.

null возвращается, когда это необязательное поле не определено.

Ограничения значений подробно описаны в таблице соответствия полей даты/времени для секунды.

Это необязательное поле может иметь определенное значение только тогда, когда поле xs:dateTime секунды, представленное getSecond(), не возвращает DatatypeConstants.FIELD_UNDEFINED.

Возвращает:
Дробные секунды этого XMLGregorianCalendar.
См. также:
  • getSecond()
  • setTime(int, int, int, BigDecimal)

compare

public abstract int compare(XMLGregorianCalendar xmlGregorianCalendar)
Сравните две экземпляры типов данных даты/времени W3C XML Schema 1.0, согласно частичному порядку, определенному в W3C XML Schema 1.0 Часть 2, Раздел 3.2.7.3, Отношение порядка на dateTime.

xsd:dateTime отображение полей типа данных к аксессорам этого класса определено в таблице отображения полей даты/времени.

Параметры:
xmlGregorianCalendar - Экземпляр XMLGregorianCalendar для сравнения
Возвращает:
Отношение между this XMLGregorianCalendar и указанным xmlGregorianCalendar, как DatatypeConstants.LESSER, DatatypeConstants.EQUAL, DatatypeConstants.GREATER или DatatypeConstants.INDETERMINATE.
Выбрасывает:
NullPointerException - если xmlGregorianCalendar равно null.

normalize

public abstract XMLGregorianCalendar normalize()
Нормализуйте этот экземпляр до UTC.

2000-03-04T23:00:00+03:00 нормализуется до 2000-03-04T20:00:00Z

Реализует W3C XML Schema Часть 2, Раздел 3.2.7.3 (A).

Возвращает:
this XMLGregorianCalendar, нормализованный до UTC.

equals

public boolean equals(Object obj)
Сравнивает этот календарь с указанным объектом. Результат равен true, если и только если аргумент не null и является объектом типа XMLGregorianCalendar, представляющим тот же момент времени, что и этот объект.
Переопределяет:
equals в классе Object
Параметры:
obj - для сравнения.
Возвращает:
true, когда obj является экземпляром XMLGregorianCalendar и compare(XMLGregorianCalendar obj) возвращает DatatypeConstants.EQUAL, в противном случае false.
См. также:
  • Object.hashCode()
  • HashMap

hashCode

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

toXMLFormat

public abstract String toXMLFormat()
Возвращает лексическое представление экземпляра this. Формат задан в XML Schema 1.0 Часть 2, Раздел 3.2.[7-14].1, Лексическое представление".

Конкретный целевой лексический формат определяется getXMLSchemaType().

Возвращает:
XML-представление этого XMLGregorianCalendar в формате String
Выбрасывает:
IllegalStateException - если сочетание установленных полей не соответствует одному из восьми встроенных типов данных даты/времени XML Schema.

getXMLSchemaType

public abstract QName getXMLSchemaType()
Возвращает имя типа данных даты/времени XML Schema, которому соответствует этот экземпляр. Тип вычисляется на основе установленных полей.
Необходимые поля для типов данных даты/времени XML Schema 1.0.
(часовой пояс необязателен для всех типов данных даты/времени)
Тип данных год месяц день час минута секунда
DatatypeConstants.DATETIME X X X X X X
DatatypeConstants.DATE X X X
DatatypeConstants.TIME X X X
DatatypeConstants.GYEARMONTH X X
DatatypeConstants.GMONTHDAY X X
DatatypeConstants.GYEAR X
DatatypeConstants.GMONTH X
DatatypeConstants.GDAY X
Возвращает:
Один из следующих констант класса: DatatypeConstants.DATETIME, DatatypeConstants.TIME, DatatypeConstants.DATE, DatatypeConstants.GYEARMONTH, DatatypeConstants.GMONTHDAY, DatatypeConstants.GYEAR, DatatypeConstants.GMONTH или DatatypeConstants.GDAY.
Выбрасывает:
IllegalStateException - если сочетание установленных полей не соответствует одному из восьми встроенных типов данных даты/времени XML Schema.

toString

public String toString()
Возвращает строковое представление этого объекта XMLGregorianCalendar Object.

Результат — лексическое представление, сгенерированное функцией toXMLFormat().

Переопределяет:
toString в классе Object
Возвращает:
Непустое строковое представление этого XMLGregorianCalendar.
Выбрасывает:
IllegalStateException - если сочетание установленных полей не соответствует одному из восьми встроенных типов данных даты/времени XML Schema.
См. также:
  • toXMLFormat()

isValid

public abstract boolean isValid()
Проверяет корректность экземпляра по ограничениям getXMLSchemaType().
Возвращает:
true, если значения данных корректны.

add

public abstract void add(Duration duration)
Добавляет duration к этому экземпляру.

Вычисление задано в XML Schema 1.0 Часть 2, Приложение E, Добавление интервалов к dateTimes. Таблица отображения полей даты/времени определяет отображение полей даты/времени XML Schema 1.0 к представлению этих полей в этом классе.

Параметры:
duration - Интервал времени, который нужно добавить к этому XMLGregorianCalendar.
Выбрасывает:
NullPointerException - если параметр duration равен null.

toGregorianCalendar

public abstract GregorianCalendar toGregorianCalendar()
Преобразование этого XMLGregorianCalendar в GregorianCalendar.

Когда this экземпляр имеет неопределённое поле, это преобразование полагается на java.util.GregorianCalendar значение по умолчанию для соответствующего поля. Отличительной особенностью между типами данных даты/времени XML Schema 1.0 и java.util.GregorianCalendar является то, что значение часового пояса необязательно для типов данных даты/времени, и это обязательное поле для java.util.GregorianCalendar. См. javadoc для java.util.TimeZone.getDefault(), чтобы узнать, как определяется значение по умолчанию. Чтобы явно указать TimeZone экземпляр, см. toGregorianCalendar(TimeZone, Locale, XMLGregorianCalendar).

Преобразование полей из этого класса в java.util.GregorianCalendar
java.util.GregorianCalendar поле javax.xml.datatype.XMLGregorianCalendar поле
ERA getEonAndYear().signum() < 0 ? GregorianCalendar.BC : GregorianCalendar.AD
YEAR getEonAndYear().abs().intValue()*
MONTH getMonth() - DatatypeConstants.JANUARY + Calendar.JANUARY
DAY_OF_MONTH getDay()
HOUR_OF_DAY getHour()
MINUTE getMinute()
SECOND getSecond()
MILLISECOND получение порядка миллисекунд из getFractionalSecond()*
GregorianCalendar.setTimeZone(TimeZone) getTimezone(), отформатированный в идентификатор пользовательского часового пояса
* указывает на возможную потерю точности при преобразовании из-за того, что исходный тип данных имеет более высокую точность, чем целевой тип данных.

Для обеспечения согласованности в реализациях преобразования новый GregorianCalendar должен быть создан следующим образом.

  • Используя значение timeZone, как определено выше, создайте новый java.util.GregorianCalendar(timeZone,Locale.getDefault()).
  • Инициализируйте все поля GregorianCalendar, вызвав Calendar.clear().
  • Получите чистый календарь GregorianCalendar, вызвав GregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE)).
  • Его поля ERA, YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, SECOND и MILLISECOND устанавливаются с помощью метода Calendar.set(int,int)
Возвращает:
Экземпляр GregorianCalendar.
См. также:
  • toGregorianCalendar(java.util.TimeZone, java.util.Locale, XMLGregorianCalendar)

toGregorianCalendar

public abstract GregorianCalendar toGregorianCalendar(TimeZone timezone, Locale aLocale, XMLGregorianCalendar defaults)
Преобразование этого XMLGregorianCalendar вместе с предоставленными параметрами в экземпляр GregorianCalendar.

Так как в типах данных даты/времени XML Schema 1.0 нет понятия идентификаторов часовых поясов или идентификаторов часовых поясов с летним временем, эта операция преобразования позволяет пользователю явно указать один с параметром timezone.

Для вычисления поля TimeZone возвращаемого значения:

  • Если параметр timeZone не равен null, это поле часового пояса.
  • В противном случае, если this.getTimezone() != FIELD_UNDEFINED, создайте java.util.TimeZone с пользовательским идентификатором часового пояса, используя this.getTimezone().
  • В противном случае, если defaults.getTimezone() != FIELD_UNDEFINED, создайте java.util.TimeZone с пользовательским идентификатором часового пояса, используя defaults.getTimezone().
  • В противном случае используйте значение по умолчанию часового пояса GregorianCalendar для хоста, определённое в соответствии с java.util.TimeZone.getDefault().

Для обеспечения согласованности в реализациях преобразования новый GregorianCalendar должен быть создан следующим образом.

  • Создайте новый java.util.GregorianCalendar(TimeZone, Locale) с установленным часовым поясом, как указано выше, и параметром Locale.
  • Инициализируйте все поля GregorianCalendar, вызвав Calendar.clear()
  • Получите чистый календарь GregorianCalendar, вызвав GregorianCalendar.setGregorianChange( new Date(Long.MIN_VALUE)).
  • Его поля ERA, YEAR, MONTH, DAY_OF_MONTH, HOUR_OF_DAY, MINUTE, SECOND и MILLISECOND устанавливаются с помощью метода Calendar.set(int,int)
Параметры:
timezone - предоставьте часовой пояс. null - законное значение.
aLocale - укажите явное языковое окружение. Используйте языковое окружение по умолчанию GregorianCalendar, если значение равно null.
defaults - укажите значения по умолчанию для использования при соответствие поля этого экземпляра значению FIELD_UNDEFINED или null. Если defaults равно null или поле в указанном defaults неопределено, используйте java.util.GregorianCalendar значения по умолчанию.
Возвращает:
преобразование java.util.GregorianCalendar этого экземпляра.

getTimeZone

public abstract TimeZone getTimeZone(int defaultZoneoffset)
Возвращает java.util.TimeZone для этого класса.

Если поле часового пояса определено для этого экземпляра, возвращает часовой пояс, инициализированный пользовательским идентификатором часового пояса смещения от Гринвича. Если поле часового пояса не определено, то попробуйте значение по умолчанию defaultZoneoffset, переданное в параметре. Если defaultZoneoffset имеет значение FIELD_UNDEFINED, верните часовой пояс по умолчанию для этого хоста. (Тот же, что и в java.util.GregorianCalendar).

Параметры:
defaultZoneoffset - смещение от Гринвича по умолчанию, если текущее смещение от Гринвича DatatypeConstants.FIELD_UNDEFINED.
Возвращает:
Часовой пояс для этого класса.

clone

public abstract Object clone()
Создаёт и возвращает копию этого объекта.
Переопределяет:
clone в классе Object
Возвращает:
копию этого Object
См. также:
  • Cloneable

© 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.xml/javax/xml/datatype/XMLGregorianCalendar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API