# 接口的使用
org.bukkit.configuration.serialization.ConfigurationSerializable

使用ConfigurationSerializable的程序包
程序包
说明
org.bukkit
Bukkit API的顶级程序包, 包含通用的API类和接口.
org.bukkit.attribute
与属性有关的类 (Minecraft Wiki - 属性).
org.bukkit.block.banner
与旗帜方块有关的类.
org.bukkit.block.spawner
Classes relevant to mob spawners.
org.bukkit.configuration
专门用于处理插件运行时配置的类.
org.bukkit.configuration.serialization
面向Bukkit`配置`实现使配置可以被执行序列化的类
org.bukkit.entity
为在`世界`内存在的非三维像素单位(实体)提供的接口，包含玩家、怪物、抛射物等.
org.bukkit.inventory
参与操作玩家物品栏和物品交互的类.
org.bukkit.inventory.meta
用于操作可以存储在`物品堆`的额外数据的接口.
org.bukkit.inventory.meta.components
Isolated components which may form part of item meta.
org.bukkit.potion
代表每种`药水`属性和操作的类的集合.
org.bukkit.profile
与玩家资料有关的类.
org.bukkit.util
提供多种目的和单一目的的类以简化各种编程概念.

- ## org.bukkit中ConfigurationSerializable的使用

  org.bukkit中ConfigurationSerializable的子接口
  修饰符和类型
  接口
  说明
  `interface`
  `OfflinePlayer`
  代表一个对玩家身份及其附属数据的引用, 数据存储于磁盘中, 因此不需要玩家在线即可获取到玩家的引用.
  实现ConfigurationSerializable的org.bukkit中的类
  修饰符和类型
  类
  说明
  `final class`
  `Color`
  这是一个调色板的容器。
  `final class`
  `FireworkEffect`
  代表一个单独的烟花效果。
  `class`
  `Location`
  世界中的三维位置,包含x,y,z.
  返回ConfigurationSerializable的org.bukkit中的方法
  修饰符和类型
  方法
  说明
  `static @NotNull ConfigurationSerializable`
  FireworkEffect.`deserialize(@NotNull Map<String,Object> map)`

- ## org.bukkit.attribute中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.attribute中的类
  修饰符和类型
  类
  说明
  `class`
  `AttributeModifier`
  一个属性修饰符的具体实现.

- ## org.bukkit.block.banner中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.block.banner中的类
  修饰符和类型
  类
  说明
  `class`
  `Pattern`

- ## org.bukkit.block.spawner中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.block.spawner中的类
  修饰符和类型
  类
  说明
  `class`
  `SpawnRule`
  Represents a spawn rule that controls what conditions an entity from a monster spawner can spawn.

- ## org.bukkit.configuration中ConfigurationSerializable的使用

  类型参数类型为ConfigurationSerializable的org.bukkit.configuration中的方法
  修饰符和类型
  方法
  说明
  `<T extends ConfigurationSerializable>
  T`
  ConfigurationSection.`getSerializable(@NotNull String path, @NotNull Class<T> clazz)`
  Gets the requested `ConfigurationSerializable` object at the given path.
  `<T extends ConfigurationSerializable>
  T`
  ConfigurationSection.`getSerializable(@NotNull String path, @NotNull Class<T> clazz, T def)`
  Gets the requested `ConfigurationSerializable` object at the given path, returning a default value if not found If the Object does not exist then the specified default value will returned regardless of if a default has been identified in the root `Configuration`.
  `<T extends ConfigurationSerializable>
  T`
  MemorySection.`getSerializable(@NotNull String path, @NotNull Class<T> clazz)`
  `<T extends ConfigurationSerializable>
  T`
  MemorySection.`getSerializable(@NotNull String path, @NotNull Class<T> clazz, T def)`

- ## org.bukkit.configuration.serialization中ConfigurationSerializable的使用

  返回ConfigurationSerializable的org.bukkit.configuration.serialization中的方法
  修饰符和类型
  方法
  说明
  `@Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserialize(@NotNull Map<String,?> args)`
  `static @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeObject(@NotNull Map<String,?> args)`
  Attempts to deserialize the given arguments into a new instance of the given class.
  `static @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeObject(@NotNull Map<String,?> args, @NotNull Class<? extends ConfigurationSerializable> clazz)`
  Attempts to deserialize the given arguments into a new instance of the given class.
  `protected @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeViaCtor(@NotNull Constructor<? extends ConfigurationSerializable> ctor, @NotNull Map<String,?> args)`
  `protected @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeViaMethod(@NotNull Method method, @NotNull Map<String,?> args)`
  返回变量类型为ConfigurationSerializable的类型的org.bukkit.configuration.serialization中的方法
  修饰符和类型
  方法
  说明
  `static @Nullable Class<? extends ConfigurationSerializable>`
  ConfigurationSerialization.`getClassByAlias(@NotNull String alias)`
  Attempts to get a registered `ConfigurationSerializable` class by its alias
  `protected @Nullable Constructor<? extends ConfigurationSerializable>`
  ConfigurationSerialization.`getConstructor()`
  类型变量类型为ConfigurationSerializable的org.bukkit.configuration.serialization中的方法参数
  修饰符和类型
  方法
  说明
  `static @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeObject(@NotNull Map<String,?> args, @NotNull Class<? extends ConfigurationSerializable> clazz)`
  Attempts to deserialize the given arguments into a new instance of the given class.
  `protected @Nullable ConfigurationSerializable`
  ConfigurationSerialization.`deserializeViaCtor(@NotNull Constructor<? extends ConfigurationSerializable> ctor, @NotNull Map<String,?> args)`
  `static @NotNull String`
  ConfigurationSerialization.`getAlias(@NotNull Class<? extends ConfigurationSerializable> clazz)`
  Gets the correct alias for the given `ConfigurationSerializable` class
  `static void`
  ConfigurationSerialization.`registerClass(@NotNull Class<? extends ConfigurationSerializable> clazz)`
  Registers the given `ConfigurationSerializable` class by its alias
  `static void`
  ConfigurationSerialization.`registerClass(@NotNull Class<? extends ConfigurationSerializable> clazz, @NotNull String alias)`
  Registers the given alias to the specified `ConfigurationSerializable` class
  `static void`
  ConfigurationSerialization.`unregisterClass(@NotNull Class<? extends ConfigurationSerializable> clazz)`
  Unregisters any aliases for the specified `ConfigurationSerializable` class
  类型变量类型为ConfigurationSerializable的org.bukkit.configuration.serialization中的构造器参数
  限定符
  构造器
  说明
  `protected`
  `ConfigurationSerialization(@NotNull Class<? extends ConfigurationSerializable> clazz)`

- ## org.bukkit.entity中ConfigurationSerializable的使用

  org.bukkit.entity中ConfigurationSerializable的子接口
  修饰符和类型
  接口
  说明
  `interface`
  `Player`
  玩家对象

- ## org.bukkit.inventory中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.inventory中的类
  修饰符和类型
  类
  说明
  `class`
  `ItemStack`
  代表物品堆.

- ## org.bukkit.inventory.meta中ConfigurationSerializable的使用

  org.bukkit.inventory.meta中ConfigurationSerializable的子接口
  修饰符和类型
  接口
  说明
  `interface`
  `ArmorMeta`
  表示实体可以装备的盔甲。
  `interface`
  `AxolotlBucketMeta`
  Represents a bucket of axolotl.
  `interface`
  `BannerMeta`
  `interface`
  `BlockDataMeta`
  `interface`
  `BlockStateMeta`
  `interface`
  `BookMeta`
  代表`成书`，有标题，作者，页面.
  `interface`
  `BundleMeta`
  `interface`
  `ColorableArmorMeta`
  Represents armor that an entity can equip and can also be colored.
  `interface`
  `CompassMeta`
  代表能追踪指定位置的指南针.
  `interface`
  `CrossbowMeta`
  代表弩.
  `interface`
  `Damageable`
  代表有耐久度、可损耗的物品.
  `interface`
  `EnchantmentStorageMeta`
  EnchantmentMeta 特定于专门存储附魔的物品, 而非被附魔的物品.
  `interface`
  `FireworkEffectMeta`
  代表可以存储单个FireworkEffect的meta.例如包含`Material.FIREWORK_STAR`.
  `interface`
  `FireworkMeta`
  代表一个`烟花火箭`及其效果.
  `interface`
  `ItemMeta`
  本类型代表物品附属数据的存储机制.
  `interface`
  `KnowledgeBookMeta`
  与知识之书有关的元数据.
  `interface`
  `LeatherArmorMeta`
  代表`皮革靴子`，`皮革外套`，`皮革帽子`，`皮革裤子`，可以被染色.
  `interface`
  `MapMeta`
  代表可被伸缩的地图.
  `interface`
  `MusicInstrumentMeta`
  `interface`
  `OminousBottleMeta`
  Represents a map that can be scalable.
  `interface`
  `PotionMeta`
  代表药水和有自定义药水效果的物品.
  `interface`
  `Repairable`
  代表可以在铁砧上修复的物品.
  `interface`
  `SkullMeta`
  代表头颅.
  `interface`
  `SpawnEggMeta`
  代表刷怪蛋和它刷出的实体的类型.
  `interface`
  `SuspiciousStewMeta`
  代表能够设置自定义药水效果的迷之炖菜.
  `interface`
  `TropicalFishBucketMeta`
  代表热带鱼桶.
  `interface`
  `WritableBookMeta`
  Represents a book (`Material.WRITABLE_BOOK` or `Material.WRITTEN_BOOK`) that can have pages.

- ## org.bukkit.inventory.meta.components中ConfigurationSerializable的使用

  org.bukkit.inventory.meta.components中ConfigurationSerializable的子接口
  修饰符和类型
  接口
  说明
  `interface`
  `FoodComponent`
  Represents a component which can turn any item into food.
  `static interface`
  `FoodComponent.FoodEffect`
  An effect which may be applied by this item when eaten.
  `interface`
  `JukeboxPlayableComponent`
  Represents a component which can be inserted into a jukebox.
  `interface`
  `ToolComponent`
  Represents a component which can turn any item into a tool.
  `static interface`
  `ToolComponent.ToolRule`
  A rule governing use of this tool and overriding attributes per-block.

- ## org.bukkit.potion中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.potion中的类
  修饰符和类型
  类
  说明
  `class`
  `PotionEffect`
  代表一个药水效果, 可应用于 `LivingEntity`.

- ## org.bukkit.profile中ConfigurationSerializable的使用

  org.bukkit.profile中ConfigurationSerializable的子接口
  修饰符和类型
  接口
  说明
  `interface`
  `PlayerProfile`
  代表一份玩家资料.

- ## org.bukkit.util中ConfigurationSerializable的使用

  实现ConfigurationSerializable的org.bukkit.util中的类
  修饰符和类型
  类
  说明
  `class`
  `BlockVector`
  这是一个带有可以向下取整XYZ坐标函数的向量类,就像WorldEdit中的BlockVector.
  `class`
  `BoundingBox`
  A mutable axis aligned bounding box (AABB).
  `class`
  `Vector`
  Vector代表一个可变向量.