Record 类

定义

这是所有Java语言记录类的常见基类。

[Android.Runtime.Register("java/lang/Record", ApiSince=34, DoNotGenerateAcw=true)]
public abstract class Record : Java.Lang.Object
[<Android.Runtime.Register("java/lang/Record", ApiSince=34, DoNotGenerateAcw=true)>]
type Record = class
    inherit Object
继承
Record
属性

注解

这是所有Java语言记录类的常见基类。

有关记录的详细信息,包括编译器合成的隐式声明方法的说明,请参阅引用>Java语言规范</引用>的第 8.10 <节。

<em>record 类</em> 是一组固定值(称为 <em>record components</em>)的浅表不可变透明载体。 Java语言提供了用于声明记录类的简洁语法,其中记录组件在记录标头中声明。 记录标头中声明的记录组件列表,格式为 <em>记录描述符</em>。

记录类具有以下授权成员: <em>规范构造函数</em>,它必须提供至少与记录类相同的访问权限,其描述符与记录描述符相同;对应于每个组件的专用最终字段,其名称和类型与组件的名称和类型相同;对应于每个组件的公共访问器方法, 其名称和返回类型与组件的名称和返回类型相同。 如果未在记录正文中显式声明,则提供这些成员的隐式实现。

规范构造函数的隐式声明具有与记录类相同的辅助功能,并从相应的构造函数参数初始化组件字段。 访问器方法的隐式声明返回相应组件字段的值。 和Object#toString()方法的Object#equals(Object)Object#hashCode()隐式声明派生自所有组件字段。

为规范构造函数或访问器方法提供显式声明的主要原因是验证构造函数参数、对可变组件执行防御性副本或规范化组件组(例如将合理数减少到最低术语)。

对于所有记录类,以下固定项必须保留:如果记录 R 的组件是 c1, c2, ... cn,则记录实例复制如下:

R copy = new R(r.c1(), r.c2(), ..., r.cn());

那么它一定是这样 r.equals(copy)

已在 16 中添加。

Java文档java.lang.Record

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

构造函数

名称 说明
Record()

要调用的记录类的构造函数。

Record(IntPtr, JniHandleOwnership)

这是所有Java语言记录类的常见基类。

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

这是所有Java语言记录类的常见基类。

(继承自 Object)
JniPeerMembers

这是所有Java语言记录类的常见基类。

PeerReference

这是所有Java语言记录类的常见基类。

(继承自 Object)
ThresholdClass

这是所有Java语言记录类的常见基类。

ThresholdType

这是所有Java语言记录类的常见基类。

方法

名称 说明
Clone()

创建并返回此对象的副本。

(继承自 Object)
Dispose()

这是所有Java语言记录类的常见基类。

(继承自 Object)
Dispose(Boolean)

这是所有Java语言记录类的常见基类。

(继承自 Object)
Equals(Object)

指示其他对象是否“等于”此对象。

GetHashCode()

返回记录的哈希代码值。

JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ToArray<T>()

这是所有Java语言记录类的常见基类。

(继承自 Object)
ToString()

返回记录的字符串表示形式。

UnregisterFromRuntime()

这是所有Java语言记录类的常见基类。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><>

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)

显式接口实现

名称 说明
IJavaPeerable.Disposed()

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.Finalized()

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

这是所有Java语言记录类的常见基类。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

这是所有Java语言记录类的常见基类。

(继承自 Object)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

这是所有Java语言记录类的常见基类。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于