次の方法で共有


IInstantSource インターフェイス

定義

現在のインスタントへのアクセスを提供します。

[Android.Runtime.Register("java/time/InstantSource", "", "Java.Time.IInstantSourceInvoker", ApiSince=34)]
public interface IInstantSource : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/time/InstantSource", "", "Java.Time.IInstantSourceInvoker", ApiSince=34)>]
type IInstantSource = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
派生
属性
実装

注釈

現在のインスタントへのアクセスを提供します。

このインターフェイスのインスタンスは、現在のインスタントのプラグ可能な表現にアクセスするために使用されます。 たとえば、InstantSource の代わりに System#currentTimeMillis() を使用できます。

この抽象化の主な目的は、必要に応じて代替インスタント ソースを接続できるようにすることです。 アプリケーションでは、静的メソッドではなく、オブジェクトを使用して現在の時刻を取得します。 これにより、テストを簡略化できます。

そのため、このインターフェイスでは、結果が実際にタイム ライン上の現在のインスタントを表すとは限りません。 代わりに、アプリケーションは現在の瞬間に関する制御されたビューを提供できます。

アプリケーションのベスト プラクティスは、現在のインスタントを InstantSource 必要とする任意のメソッドに渡すことです。 依存関係の挿入フレームワークは、これを実現する 1 つの方法です。

public class MyBean {
               private InstantSource source;  // dependency inject
               ...
               public void process(Instant endInstant) {
                 if (source.instant().isAfter(endInstant) {
                   ...
                 }
               }
             }

この方法では、テスト中に使用する#offset(InstantSource, Duration) offsetなどの#fixed(Instant) fixed代替ソースを使用できます。

ファクトリ メソッドは system 、使用可能な最適なシステム クロックに基づいてソースを提供します。 これは、使用可能な場合は、より高い解像度のクロックを使用 System#currentTimeMillis()できます。

17 で追加されました。

の Java ドキュメントjava.time.InstantSource

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

プロパティ

Handle

基になる Android オブジェクトの JNI 値を取得します。

(継承元 IJavaObject)
JniIdentityHashCode

ラップされたインスタンスの java.lang.System.identityHashCode() 値を返します。

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniPeerMembers

メンバー アクセスと呼び出しのサポート。

(継承元 IJavaPeerable)
PeerReference

ラップされた Java オブジェクト インスタンスの a JniObjectReference を返します。

(継承元 IJavaPeerable)

メソッド

Disposed()

インスタンスが破棄されたときに呼び出されます。

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

このインスタンスへの未処理の参照がない場合は、呼び出 Dispose()します。それ以外の場合は何も行いません。

(継承元 IJavaPeerable)
Finalized()

インスタンスが終了したときに呼び出されます。

(継承元 IJavaPeerable)
Fixed(Instant)

常に同じインスタントを返すソースを取得します。

Instant()

ソースの現在のインスタントを取得します。

Millis()

ソースの現在のミリ秒のインスタントを取得します。

Offset(IInstantSource, Duration)

指定した期間が追加された指定したソースからインスタントを返すソースを取得します。

SetJniIdentityHashCode(Int32)

によって JniIdentityHashCode返される値を設定します。

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

現在のインスタントへのアクセスを提供します。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

によって PeerReference返される値を設定します。

(継承元 IJavaPeerable)
System()

使用可能な最適なシステム クロックを使用して現在のインスタントを返すソースを取得します。

Tick(IInstantSource, Duration)

指定した期間の最も近い位置に切り捨てられた指定したソースからインスタントを返すソースを取得します。

UnregisterFromRuntime()

ランタイムが将来 Java.Interop.JniRuntime+JniValueManager.PeekValue の呼び出しから返されないように、このインスタンスの登録を解除します。

(継承元 IJavaPeerable)
WithZone(ZoneId)

指定したタイム ゾーンを持つクロックを返します。

拡張メソッド

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

現在のインスタントへのアクセスを提供します。

GetJniTypeName(IJavaPeerable)

現在のインスタントへのアクセスを提供します。

適用対象