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
派生
属性
实现

注解

框架级接口,用于定义对临时对象的读写访问,例如日期、时间、偏移量或这些对象的某种组合。

这是日期、时间和偏移量对象的基接口类型,这些对象足够完整,可以使用加号和减号进行操作。 它由那些可以提供和操作信息作为 TemporalField 字段或 TemporalQuery 查询的类实现。 有关此接口的只读版本,请参阅 TemporalAccessor

大多数日期和时间信息都可以表示为数字。 这些是使用 TemporalField 进行建模的,其中保存的数字是使用 long 来处理大值。 年、月和月日是字段的简单示例,但也包括即时和偏移量。 有关标准字段集,请参阅 ChronoField

两条日期/时间信息不能由数字表示,即 java.time.chrono.Chronology 年表和 java.time.ZoneId 时区。 可以使用上TemporalQuery定义的静态方法访问#query(TemporalQuery) queries这些。

此接口是不应在应用程序代码中广泛使用的框架级接口。 相反,应用程序应创建并传递具体类型的实例,例如 LocalDate。 原因有很多,其中一部分是因为此接口的实现可能位于 ISO 以外的日历系统中。 有关问题的更全面讨论,请参阅 java.time.chrono.ChronoLocalDate

<h2>何时实现</h2>

如果类满足三个条件,则应实现此接口: <ul><li>它提供对日期/时间/偏移信息的访问权限,根据 TemporalAccessor<li>,字段集从最大到最小 <li 是连续的,>字段集是完整的,因此不需要其他字段来定义表示 <的字段的有效值范围 /ul>

四个示例清楚地说明了这一点: <ul><li>LocalDate 实现此接口,因为它表示一组从天到常连续的字段,不需要外部信息来确定每个日期的有效性。 因此,它能够正确实现加/减。 <li>LocalTime 实现此接口,因为它表示一组从 nanos 到天以内连续的字段,并且不需要外部信息来确定有效性。 它可以通过环绕一天来正确实现加/减。 <li>MonthDay 是年月和月日的组合,不实现此接口。 虽然组合是连续的(从天数到几年内的月),但组合没有足够的信息来定义月份日期的有效值范围。 因此,它无法正确实现加/减。 <li>组合星期和月 (“星期五 13 日”) 不应实现此接口。 它不表示一组连续的字段,因为天到周重叠天到月。 </ul>

在 1.8 中添加。

java.time.temporal.TemporalJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

属性

Handle

获取基础 Android 对象的 JNI 值。

(继承自 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)

框架级接口,用于定义对临时对象的读写访问,例如日期、时间、偏移量或这些对象的某种组合。

适用于