Поделиться через


ITemporal Интерфейс

Определение

Интерфейс уровня платформы, определяющий доступ на чтение и запись к темпоральным объектам, таким как дата, время, смещение или некоторая комбинация этих объектов.

[Android.Runtime.Register("java/time/temporal/Temporal", "", "Java.Time.Temporal.ITemporalInvoker", ApiSince=26)]
public interface ITemporal : IDisposable, Java.Interop.IJavaPeerable, Java.Time.Temporal.ITemporalAccessor
[<Android.Runtime.Register("java/time/temporal/Temporal", "", "Java.Time.Temporal.ITemporalInvoker", ApiSince=26)>]
type ITemporal = interface
    interface ITemporalAccessor
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Производный
Атрибуты
Реализации

Комментарии

Интерфейс уровня платформы, определяющий доступ на чтение и запись к темпоральным объектам, таким как дата, время, смещение или некоторая комбинация этих объектов.

Это базовый тип интерфейса для объектов даты, времени и смещения, которые достаточно завершены для обработки с помощью плюса и минуса. Он реализуется этими классами, которые могут предоставлять и управлять информацией в виде полей Темпорфилда или запросов Темпорквор. См TemporalAccessor . версию этого интерфейса только для чтения.

Большинство сведений о дате и времени можно представить в виде числа. Они моделироваются с TemporalField номером, удерживаемого long с помощью обработки больших значений. Год, месяц и день месяца являются простыми примерами полей, но они также включают мгновенное и смещение. См ChronoField . стандартный набор полей.

Две части сведений о дате и времени не могут быть представлены числами, хронологией java.time.chronology и часовой поясом java.time.ZoneId. Доступ к этим методам можно получить с помощью #query(TemporalQuery) queries статических методов, определенных в TemporalQuery.

Этот интерфейс — это интерфейс уровня платформы, который не должен широко использоваться в коде приложения. Вместо этого приложения должны создавать и передавать экземпляры конкретных типов, например LocalDate. Существует множество причин этого, частью которого является то, что реализации этого интерфейса могут находиться в системах календаря, отличных от ISO. См java.time.chrono.ChronoLocalDate . более полное обсуждение вопросов.

<h2>Когда следует реализовать</h2>

Класс должен реализовать этот интерфейс, если он соответствует трем критериям: <ul<>li>он предоставляет доступ к сведениям о дате и времени/смещения, так как в<TemporalAccessor> соответствии с набором полей, которые являются смежными от самого большого до наименьшего <набора полей,>поэтому для определения допустимого диапазона значений полей, представленных </ul, не требуется другое поле.>

В четырех примерах это ясно: <ul><li>LocalDate реализует этот интерфейс, так как он представляет набор полей, которые являются непрерывными от дней до вечного и не требуют внешних сведений для определения допустимости каждой даты. Поэтому он может правильно реализовать плюс/минус. <li>LocalTime реализует этот интерфейс, так как представляет набор полей, которые являются смежными от nanos до дней и не требуют внешних сведений для определения допустимости. Он может реализовать плюс/минус правильно, упаковав вокруг дня. <li>MonthDay, сочетание месяца и дня месяца, не реализует этот интерфейс. Хотя сочетание является непрерывным, от дней до месяцев в течение нескольких лет, сочетание не имеет достаточно информации, чтобы определить допустимый диапазон значений для дня месяца. Таким образом, он не может реализовать плюс/минус правильно. <li>Сочетание дня недели и дня месяца ("пятница 13-го") не должно реализовывать этот интерфейс. Он не представляет собой непрерывный набор полей, так как дни и недели перекрываются днями в месяцы. </ul>

Добавлено в версии 1.8.

Документация по Java для java.time.temporal.Temporal.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Свойства

Handle

Возвращает значение JNI базового объекта Android.

(Унаследовано от IJavaObject)
JniIdentityHashCode

Возвращает значение java.lang.System.identityHashCode() для упаковаемого экземпляра.

(Унаследовано от IJavaPeerable)
JniManagedPeerState

Состояние управляемого однорангового узла.

(Унаследовано от IJavaPeerable)
JniPeerMembers

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

(Унаследовано от IJavaPeerable)
PeerReference

JniObjectReference Возвращает экземпляр объекта Java в оболочке.

(Унаследовано от IJavaPeerable)

Методы

Disposed()

Вызывается при удалении экземпляра.

(Унаследовано от IJavaPeerable)
DisposeUnlessReferenced()

Если нет невыполненных ссылок на этот экземпляр, то вызывается Dispose(); в противном случае ничего не делает.

(Унаследовано от IJavaPeerable)
Finalized()

Вызывается при завершении экземпляра.

(Унаследовано от IJavaPeerable)
Get(ITemporalField)

Возвращает значение указанного поля в качестве intзначения.

(Унаследовано от ITemporalAccessor)
GetLong(ITemporalField)

Возвращает значение указанного поля в виде long.

(Унаследовано от ITemporalAccessor)
IsSupported(ITemporalField)

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

(Унаследовано от ITemporalAccessor)
IsSupported(ITemporalUnit)

Проверяет, поддерживается ли указанная единица.

Minus(Int64, ITemporalUnit)

Возвращает объект того же типа, что и этот объект с заданным периодом вычитания.

Minus(ITemporalAmount)

Возвращает объект того же типа, что и этот объект с вычитаемой суммой.

Plus(Int64, ITemporalUnit)

Возвращает объект того же типа, что и этот объект с указанным периодом, добавленным.

Plus(ITemporalAmount)

Возвращает объект того же типа, что и этот объект с добавленным объемом.

Query(ITemporalQuery)

Запрашивает это время даты.

(Унаследовано от ITemporalAccessor)
Range(ITemporalField)

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

(Унаследовано от ITemporalAccessor)
SetJniIdentityHashCode(Int32)

Задайте значение, возвращаемое JniIdentityHashCode.

(Унаследовано от IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Интерфейс уровня платформы, определяющий доступ на чтение и запись к темпоральным объектам, таким как дата, время, смещение или некоторая комбинация этих объектов.

(Унаследовано от IJavaPeerable)
SetPeerReference(JniObjectReference)

Задайте значение, возвращаемое PeerReference.

(Унаследовано от IJavaPeerable)
UnregisterFromRuntime()

Отмените регистрацию этого экземпляра, чтобы среда выполнения не возвращала ее из будущих Java.Interop.JniRuntime+JniValueManager.PeekValue вызовов.

(Унаследовано от IJavaPeerable)
Until(ITemporal, ITemporalUnit)

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

With(ITemporalAdjuster)

Возвращает скорректированный объект того же типа, что и этот объект с внесенным корректировкой.

With(ITemporalField, Int64)

Возвращает объект того же типа, что и этот объект с измененным полем.

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Интерфейс уровня платформы, определяющий доступ на чтение и запись к темпоральным объектам, таким как дата, время, смещение или некоторая комбинация этих объектов.

GetJniTypeName(IJavaPeerable)

Интерфейс уровня платформы, определяющий доступ на чтение и запись к темпоральным объектам, таким как дата, время, смещение или некоторая комбинация этих объектов.

Применяется к