对象所有权
每个对象都有一个所有者字段,规定了你在事务中如何使用它。对象可以具有以下类型的所有权:
Address-owned
一个地址拥有的对象是由一个特定的32字节地址拥有的,该地址可以是账户地址(从特定签名方案派生)或对象ID。地址拥有的对象仅对其所有者可访问,其他人无法访问。
详细了解请参见 地址拥有的对象。
动态字段
在Sui上,动态字段和动态对象字段是动态添加和删除的,仅在访问时影响gas,并存储异构值。
详细了解请参见 动态(对象)字段。
不可变的
不可变对象是一种无法变异、转移或删除的对象。不可变对象没有所有者,因此任何人都可以使用它们。
详细了解请参见 不可变的对象。
共享的
共享对象是使用 0x2::transfer::share_object
函数共享的对象,对所有人都是可访问的。与拥有的对象不同,任何人都可以在网络上访问共享对象。
详细了解请参见 共享对象。
封装的
在Move中,你可以通过将 struct
类型的字段放入另一个结构中来组织数据结构。
详细了解请参见 封装的对象。