IInstantSource Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce l'accesso all'istante corrente.
[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
- Derivato
- Attributi
- Implementazioni
Commenti
Fornisce l'accesso all'istante corrente.
Le istanze di questa interfaccia vengono usate per accedere a una rappresentazione pluggable dell'istante corrente. Ad esempio InstantSource
può essere usato invece di System#currentTimeMillis()
.
Lo scopo principale di questa astrazione è consentire l'inserimento di origini istantanee alternative come e quando necessario. Le applicazioni usano un oggetto per ottenere l'ora corrente anziché un metodo statico. In questo modo è possibile semplificare i test.
Di conseguenza, questa interfaccia non garantisce che il risultato rappresenti effettivamente l'istante corrente sulla linea temporale. Consente invece all'applicazione di fornire una visualizzazione controllata come quello che è l'istante corrente.
La procedura consigliata per le applicazioni consiste nel passare un InstantSource
metodo qualsiasi che richiede l'istante corrente. Un framework di inserimento delle dipendenze è un modo per ottenere questo risultato:
public class MyBean {
private InstantSource source; // dependency inject
...
public void process(Instant endInstant) {
if (source.instant().isAfter(endInstant) {
...
}
}
}
Questo approccio consente un'origine alternativa, ad esempio #fixed(Instant) fixed
o #offset(InstantSource, Duration) offset
da usare durante il test.
Il metodo factory fornisce un'origine system
basata sul miglior orologio di sistema disponibile. Questo può usare System#currentTimeMillis()
o un orologio di risoluzione superiore se disponibile.
Aggiunto nel 17.
Documentazione Java per java.time.InstantSource
.
Le parti di questa pagina sono modifiche in base al lavoro creato e condiviso dal Android Open Source e usato in base ai termini descritti nella .
Proprietà
Handle |
Ottiene il valore JNI dell'oggetto Android sottostante. (Ereditato da IJavaObject) |
JniIdentityHashCode |
Restituisce il valore di per |
JniManagedPeerState |
Stato del peer gestito. (Ereditato da IJavaPeerable) |
JniPeerMembers |
Supporto per l'accesso ai membri e la chiamata. (Ereditato da IJavaPeerable) |
PeerReference |
Restituisce un'istanza JniObjectReference dell'oggetto Java con wrapping. (Ereditato da IJavaPeerable) |
Metodi
Disposed() |
Chiamato quando l'istanza è stata eliminata. (Ereditato da IJavaPeerable) |
DisposeUnlessReferenced() |
Se non sono presenti riferimenti in sospeso a questa istanza, chiama |
Finalized() |
Chiamato quando l'istanza è stata finalizzata. (Ereditato da IJavaPeerable) |
Fixed(Instant) |
Ottiene un'origine che restituisce sempre lo stesso istante. |
Instant() |
Ottiene l'istantanea corrente dell'origine. |
Millis() |
Ottiene l'istante corrente millisecondo dell'origine. |
Offset(IInstantSource, Duration) |
Ottiene un'origine che restituisce istantanee dall'origine specificata con la durata specificata aggiunta. |
SetJniIdentityHashCode(Int32) |
Impostare il valore restituito da |
SetJniManagedPeerState(JniManagedPeerStates) |
Fornisce l'accesso all'istante corrente. (Ereditato da IJavaPeerable) |
SetPeerReference(JniObjectReference) |
Impostare il valore restituito da |
System() |
Ottiene un'origine che restituisce l'istante corrente usando il miglior orologio di sistema disponibile. |
Tick(IInstantSource, Duration) |
Ottiene un'origine che restituisce istantanee dall'origine specificata troncata all'occorrenza più vicina della durata specificata. |
UnregisterFromRuntime() |
Annullare la registrazione di questa istanza in modo che il runtime non lo restituirà dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue . (Ereditato da IJavaPeerable) |
WithZone(ZoneId) |
Restituisce un orologio con il fuso orario specificato. |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione dei tipi controllati dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Fornisce l'accesso all'istante corrente. |
GetJniTypeName(IJavaPeerable) |
Fornisce l'accesso all'istante corrente. |