IInstantSource 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 인스턴트에 대한 액세스를 제공합니다.
[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
- 파생
- 특성
- 구현
설명
현재 인스턴트에 대한 액세스를 제공합니다.
이 인터페이스의 인스턴스는 현재 인스턴트의 플러그형 표현에 액세스하는 데 사용됩니다. 예를 들어 System#currentTimeMillis()
대신 InstantSource
를 사용할 수 있습니다.
이 추상화의 주요 목적은 필요한 경우 대체 인스턴트 원본을 연결하도록 허용하는 것입니다. 애플리케이션은 개체를 사용하여 정적 메서드가 아닌 현재 시간을 가져옵니다. 이렇게 하면 테스트를 간소화할 수 있습니다.
따라서 이 인터페이스는 결과가 실제로 시간줄의 현재 인스턴트를 나타낸다고 보장하지 않습니다. 대신 애플리케이션에서 현재 인스턴트가 무엇인지에 대한 제어된 보기를 제공할 수 있습니다.
애플리케이션의 모범 사례는 현재 인스턴트가 필요한 모든 메서드에 를 전달하는 InstantSource
것입니다. 종속성 주입 프레임워크는 다음을 수행하는 한 가지 방법입니다.
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
.
이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.
속성
Handle |
기본 Android 개체의 JNI 값을 가져옵니다. (다음에서 상속됨 IJavaObject) |
JniIdentityHashCode |
래핑된 instance 값을 반환 |
JniManagedPeerState |
관리되는 피어의 상태입니다. (다음에서 상속됨 IJavaPeerable) |
JniPeerMembers |
멤버 액세스 및 호출 지원. (다음에서 상속됨 IJavaPeerable) |
PeerReference |
JniObjectReference 래핑된 Java 개체 instance 의 를 반환합니다. (다음에서 상속됨 IJavaPeerable) |
메서드
Disposed() |
instance 삭제될 때 호출됩니다. (다음에서 상속됨 IJavaPeerable) |
DisposeUnlessReferenced() |
이 instance 대한 미해결 참조가 없으면 를 호출 |
Finalized() |
instance 완료될 때 호출됩니다. (다음에서 상속됨 IJavaPeerable) |
Fixed(Instant) |
항상 동일한 인스턴트를 반환하는 원본을 가져옵니다. |
Instant() |
원본의 현재 인스턴트를 가져옵니다. |
Millis() |
원본의 현재 밀리초 인스턴트를 가져옵니다. |
Offset(IInstantSource, Duration) |
지정된 기간이 추가된 지정된 원본에서 인스턴트를 반환하는 원본을 가져옵니다. |
SetJniIdentityHashCode(Int32) |
에서 반환 |
SetJniManagedPeerState(JniManagedPeerStates) |
현재 인스턴트에 대한 액세스를 제공합니다. (다음에서 상속됨 IJavaPeerable) |
SetPeerReference(JniObjectReference) |
에서 반환 |
System() |
사용 가능한 최상의 시스템 클록을 사용하여 현재 인스턴트를 반환하는 원본을 가져옵니다. |
Tick(IInstantSource, Duration) |
지정된 기간의 가장 가까운 발생으로 잘린 지정된 소스에서 인스턴트를 반환하는 원본을 가져옵니다. |
UnregisterFromRuntime() |
런타임이 이후 Java.Interop.JniRuntime+JniValueManager.PeekValue 호출에서 반환되지 않도록 이 instance 등록을 취소합니다. (다음에서 상속됨 IJavaPeerable) |
WithZone(ZoneId) |
지정된 표준 시간대가 있는 클록을 반환합니다. |
확장 메서드
JavaCast<TResult>(IJavaObject) |
Android 런타임 확인 형식 변환을 수행합니다. |
JavaCast<TResult>(IJavaObject) |
현재 인스턴트에 대한 액세스를 제공합니다. |
GetJniTypeName(IJavaPeerable) |
현재 인스턴트에 대한 액세스를 제공합니다. |