Condividi tramite


Instant Classe

Definizione

Punto istantaneo sulla linea temporale.

[Android.Runtime.Register("java/time/Instant", ApiSince=26, DoNotGenerateAcw=true)]
public sealed class Instant : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.IComparable, Java.Time.Temporal.ITemporal, Java.Time.Temporal.ITemporalAdjuster
[<Android.Runtime.Register("java/time/Instant", ApiSince=26, DoNotGenerateAcw=true)>]
type Instant = class
    inherit Object
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IComparable
    interface ITemporal
    interface ITemporalAccessor
    interface ITemporalAdjuster
Ereditarietà
Instant
Attributi
Implementazioni

Commenti

Punto istantaneo sulla linea temporale.

Questa classe modella un singolo punto istantaneo sulla linea temporale. Questa operazione può essere usata per registrare i timestamp degli eventi nell'applicazione.

L'intervallo di un istante richiede l'archiviazione di un numero maggiore di un longoggetto . A questo scopo, la classe archivia un long oggetto che rappresenta periodi-secondi e un int nanosecondo di secondo, che sarà sempre compreso tra 0 e 999.999.999. I secondi dell'epoca vengono misurati dall'epoca Java standard di 1970-01-01T00:00:00Z dove gli istantanei dopo l'epoca hanno valori positivi e gli istantanei precedenti hanno valori negativi. Per entrambe le parti epoca-secondo e nanosecondo, un valore maggiore è sempre più avanti sulla linea temporale rispetto a un valore più piccolo.

<h2 Scala temporale</h2>>

La lunghezza del giorno solare è il modo standard in cui gli esseri umani misurano il tempo. Questo è stato tradizionalmente suddiviso in 24 ore di 60 minuti di 60 secondi, formando un secondo giorno 86400.

Il timekeeping moderno si basa su orologi atomici che definiscono esattamente un secondo SI rispetto alle transizioni di un atomo caesium. La lunghezza di un secondo si è definita per essere molto vicina alla frazione 86400th di un giorno.

Purtroppo, mentre la Terra ruota la lunghezza del giorno varia. Inoltre, nel tempo la lunghezza media del giorno è sempre più lunga quando la Terra rallenta. Di conseguenza, la lunghezza di un giorno solare nel 2012 è leggermente più lunga di 86400 SECONDI SI. La lunghezza effettiva di qualsiasi giorno e la quantità in base alla quale la Terra sta rallentando non sono prevedibili e possono essere determinate solo dalla misurazione. La scala temporale UT1 acquisisce la lunghezza accurata del giorno, ma è disponibile solo qualche ora dopo il completamento del giorno.

La scala temporale UTC è un approccio standard per raggruppare tutte le frazioni aggiuntive di un secondo da UT1 a secondi interi, note come secondi di salto. Un secondo salto può essere aggiunto o rimosso a seconda dei cambiamenti di rotazione della Terra. Di conseguenza, le UTC consentono a un giorno di avere 86399 secondi SI o 86401 SI, se necessario, per mantenere il giorno allineato al Sole.

La scala temporale UTC moderna è stata introdotta nel 1972, introducendo il concetto di interi secondi di salto. Tra il 1958 e il 1972, la definizione dell'UTC era complessa, con salti secondari secondari e modifiche alla lunghezza del secondo notzionale. A partire dal 2012, le discussioni sono in corso per modificare di nuovo la definizione di UTC, con il potenziale di rimuovere secondi salti o introdurre altre modifiche.

Dato la complessità del timekeeping accurato descritto in precedenza, questa API Java definisce la propria scala temporale, la scalabilità temporale Java.

Il Time-Scale Java divide ogni giorno del calendario in esattamente 86400 suddivisioni, note come secondi. Questi secondi possono essere diversi dal secondo si. Corrisponde strettamente alla scala internazionale del tempo civile internazionale, la definizione delle quali cambia da tempo a tempo.

La Time-Scale Java ha definizioni leggermente diverse per segmenti diversi della linea temporale, ognuno basato sulla scala temporale internazionale di consenso usata come base per il tempo civile. Ogni volta che la scala temporale concordata a livello internazionale viene modificata o sostituita, è necessario definire un nuovo segmento del Time-Scale Java. Ogni segmento deve soddisfare questi requisiti: <ul><li>the Java Time-Scale deve corrispondere strettamente alla scala internazionale di tempo civile sottostante;</li><li>il Time-Scale Java corrisponderà esattamente alla scala internazionale di tempo civile al noon ogni giorno;</li><li>il Time-Scale Java avrà una relazione definita in modo preciso alla scala internazionale del tempo civile.</li></ul> Attualmente sono presenti, a partire dal 2013, due segmenti nella scala temporale Java.

Per il segmento compreso tra il 1972-11-03 (limite esatto descritto di seguito) fino a quando non si noti ulteriormente, la scala temporale internazionale di consenso è UTC (con secondi di salto). In questo segmento, il Time-Scale Java è identico a UTC-SLS. Questo è identico a UTC nei giorni in cui non si ha un secondo salto. Nei giorni che hanno un secondo salto, il secondo salto viene distribuito equamente negli ultimi 1000 secondi del giorno, mantenendo l'aspetto esattamente di 86400 secondi al giorno.

Per il segmento precedente al 1972-11-03, estendendo arbitrariamente la scala temporale internazionale di consenso è definita come UT1, applicata in modo proleptico, che equivale al tempo solare (medio) sul meridiano primo (Greenwich). In questo segmento, il Time-Scale Java è identico alla scala temporale internazionale di consenso. Il limite esatto tra i due segmenti è l'istante in cui UT1 = UTC compreso tra 1972-11-03T00:00 e 1972-11-04T12:00.

Le implementazioni della scala temporale Java usando l'API JSR-310 non sono necessarie per fornire un orologio che è sotto-secondo accurato o che progredisce monotonicamente o senza problemi. Le implementazioni non sono quindi necessarie per eseguire effettivamente lo slew UTC-SLS o per essere consapevoli di secondi di salto. JSR-310, tuttavia, richiede che le implementazioni debbano documentare l'approccio usato durante la definizione di un orologio che rappresenta l'istante corrente. Vedere Clock per informazioni dettagliate sugli orologi disponibili.

La scala temporale Java viene usata per tutte le classi di data e ora. Include Instant, , LocalDateLocalTime, OffsetDateTimeZonedDateTime e Duration.

Aggiunta nella versione 1.8.

Documentazione Java per java.time.Instant.

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à

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Epoch

Punto istantaneo sulla linea temporale.

EpochSecond

Ottiene il numero di secondi dall'epoca Java del 1970-01-01T00:00:00Z.

Handle

Handle all'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
JniPeerMembers

Punto istantaneo sulla linea temporale.

Max

Punto istantaneo sulla linea temporale.

Min

Punto istantaneo sulla linea temporale.

Nano

Ottiene il numero di nanosecondi, più avanti lungo la linea temporale, dall'inizio del secondo.

PeerReference

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)

Metodi

AdjustInto(ITemporal)

Punto istantaneo sulla linea temporale.

AtOffset(ZoneOffset)

Punto istantaneo sulla linea temporale.

AtZone(ZoneId)

Punto istantaneo sulla linea temporale.

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
CompareTo(Instant)

Punto istantaneo sulla linea temporale.

Dispose()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
Dispose(Boolean)

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
From(ITemporalAccessor)

Punto istantaneo sulla linea temporale.

Get(ITemporalField)

Punto istantaneo sulla linea temporale.

GetHashCode()

Restituisce un valore del codice hash per l'oggetto.

(Ereditato da Object)
GetLong(ITemporalField)

Punto istantaneo sulla linea temporale.

IsAfter(Instant)

Punto istantaneo sulla linea temporale.

IsBefore(Instant)

Punto istantaneo sulla linea temporale.

IsSupported(ITemporalField)

Punto istantaneo sulla linea temporale.

IsSupported(ITemporalUnit)

Punto istantaneo sulla linea temporale.

JavaFinalize()

Chiamato dal Garbage Collector in un oggetto quando Garbage Collection determina che non sono presenti più riferimenti all'oggetto.

(Ereditato da Object)
Minus(Int64, ITemporalUnit)

Punto istantaneo sulla linea temporale.

Minus(ITemporalAmount)

Punto istantaneo sulla linea temporale.

MinusMillis(Int64)

Punto istantaneo sulla linea temporale.

MinusNanos(Int64)

Punto istantaneo sulla linea temporale.

MinusSeconds(Int64)

Punto istantaneo sulla linea temporale.

Notify()

Riattiva un singolo thread in attesa del monitoraggio dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitoraggio dell'oggetto.

(Ereditato da Object)
Now()

Punto istantaneo sulla linea temporale.

Now(Clock)

Punto istantaneo sulla linea temporale.

OfEpochMilli(Int64)

Punto istantaneo sulla linea temporale.

OfEpochSecond(Int64)

Punto istantaneo sulla linea temporale.

OfEpochSecond(Int64, Int64)

Punto istantaneo sulla linea temporale.

Parse(ICharSequence)

Punto istantaneo sulla linea temporale.

Parse(String)

Punto istantaneo sulla linea temporale.

Plus(Int64, ITemporalUnit)

Punto istantaneo sulla linea temporale.

Plus(ITemporalAmount)

Punto istantaneo sulla linea temporale.

PlusMillis(Int64)

Punto istantaneo sulla linea temporale.

PlusNanos(Int64)

Punto istantaneo sulla linea temporale.

PlusSeconds(Int64)

Punto istantaneo sulla linea temporale.

Query(ITemporalQuery)

Punto istantaneo sulla linea temporale.

Range(ITemporalField)

Punto istantaneo sulla linea temporale.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
ToArray<T>()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
ToEpochMilli()

Converte questo istante nel numero di millisecondi dall'epoca del 1970-01-01T00:00:00Z.

ToString()

Restituisce una rappresentazione in formato stringa dell'oggetto.

(Ereditato da Object)
TruncatedTo(ITemporalUnit)

Punto istantaneo sulla linea temporale.

UnregisterFromRuntime()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
Until(ITemporal, ITemporalUnit)

Punto istantaneo sulla linea temporale.

Wait()

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere eseguendo>una notifica</em o <em interrotto</>em>>.<

(Ereditato da Object)
Wait(Int64)

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64, Int32)

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

(Ereditato da Object)
With(ITemporalAdjuster)

Punto istantaneo sulla linea temporale.

With(ITemporalField, Int64)

Punto istantaneo sulla linea temporale.

Implementazioni dell'interfaccia esplicita

IComparable.CompareTo(Object)

Punto istantaneo sulla linea temporale.

IJavaPeerable.Disposed()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.Finalized()

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Punto istantaneo sulla linea temporale.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Punto istantaneo sulla linea temporale.

(Ereditato da Object)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione dei tipi controllati dal runtime Android.

JavaCast<TResult>(IJavaObject)

Punto istantaneo sulla linea temporale.

GetJniTypeName(IJavaPeerable)

Punto istantaneo sulla linea temporale.

Si applica a