# 程序包org.bukkit.inventory的分层结构

程序包分层结构:

- 所有程序包

## 类分层结构

- java.lang.Object
  - org.bukkit.inventory.CookingRecipe<T> (implements org.bukkit.Keyed, org.bukkit.inventory.Recipe)
    - org.bukkit.inventory.BlastingRecipe
    - org.bukkit.inventory.CampfireRecipe
    - org.bukkit.inventory.FurnaceRecipe
    - org.bukkit.inventory.SmokingRecipe
  - org.bukkit.inventory.CraftingRecipe (implements org.bukkit.Keyed, org.bukkit.inventory.Recipe)
    - org.bukkit.inventory.ShapedRecipe
    - org.bukkit.inventory.ShapelessRecipe
  - org.bukkit.inventory.EquipmentSlotGroup (implements java.util.function.Predicate<T>)
  - org.bukkit.inventory.ItemStack (implements java.lang.Cloneable, org.bukkit.configuration.serialization.ConfigurationSerializable, org.bukkit.Translatable)
  - org.bukkit.inventory.MerchantRecipe (implements org.bukkit.inventory.Recipe)
  - org.bukkit.inventory.RecipeChoice.ExactChoice (implements org.bukkit.inventory.RecipeChoice)
  - org.bukkit.inventory.RecipeChoice.MaterialChoice (implements org.bukkit.inventory.RecipeChoice)
  - org.bukkit.inventory.SmithingRecipe (implements org.bukkit.Keyed, org.bukkit.inventory.Recipe)
    - org.bukkit.inventory.SmithingTransformRecipe
    - org.bukkit.inventory.SmithingTrimRecipe (implements org.bukkit.inventory.ComplexRecipe)
  - org.bukkit.inventory.StonecuttingRecipe (implements org.bukkit.Keyed, org.bukkit.inventory.Recipe)

## 接口分层结构

- java.lang.Cloneable
  - org.bukkit.inventory.RecipeChoice (并 extends java.util.function.Predicate<T>)
- org.bukkit.inventory.EntityEquipment
- org.bukkit.inventory.InventoryHolder
  - org.bukkit.inventory.BlockInventoryHolder
- org.bukkit.inventory.InventoryView
- org.bukkit.inventory.ItemCraftResult
- org.bukkit.inventory.ItemFactory
- java.lang.Iterable<T>
  - org.bukkit.inventory.Inventory
    - org.bukkit.inventory.AbstractHorseInventory
      - org.bukkit.inventory.HorseInventory
      - org.bukkit.inventory.LlamaInventory
    - org.bukkit.inventory.AnvilInventory
    - org.bukkit.inventory.BeaconInventory
    - org.bukkit.inventory.BrewerInventory
    - org.bukkit.inventory.CartographyInventory
    - org.bukkit.inventory.ChiseledBookshelfInventory
    - org.bukkit.inventory.CrafterInventory
    - org.bukkit.inventory.CraftingInventory
    - org.bukkit.inventory.DecoratedPotInventory
    - org.bukkit.inventory.DoubleChestInventory
    - org.bukkit.inventory.EnchantingInventory
    - org.bukkit.inventory.FurnaceInventory
    - org.bukkit.inventory.GrindstoneInventory
    - org.bukkit.inventory.JukeboxInventory
    - org.bukkit.inventory.LecternInventory
    - org.bukkit.inventory.LoomInventory
    - org.bukkit.inventory.MerchantInventory
    - org.bukkit.inventory.PlayerInventory
    - org.bukkit.inventory.SmithingInventory
    - org.bukkit.inventory.StonecutterInventory
- org.bukkit.Keyed
  - org.bukkit.inventory.ComplexRecipe (并 extends org.bukkit.inventory.Recipe)
  - org.bukkit.inventory.ItemType (并 extends org.bukkit.Translatable)
    - org.bukkit.inventory.ItemType.Typed<M>
- org.bukkit.inventory.Merchant
- java.util.function.Predicate<T>
  - org.bukkit.inventory.RecipeChoice (并 extends java.lang.Cloneable)
- org.bukkit.inventory.Recipe
  - org.bukkit.inventory.ComplexRecipe (并 extends org.bukkit.Keyed)
- org.bukkit.Translatable
  - org.bukkit.inventory.ItemType (并 extends org.bukkit.Keyed)
    - org.bukkit.inventory.ItemType.Typed<M>

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - org.bukkit.inventory.CreativeCategory
    - org.bukkit.inventory.EquipmentSlot
    - org.bukkit.inventory.InventoryView.Property
    - org.bukkit.inventory.ItemFlag
    - org.bukkit.inventory.ItemRarity
    - org.bukkit.inventory.MainHand