Uses of Enum

Packages that use Material
The root package of the Bukkit API, contains generalized API classes.
Classes used to manipulate the voxels in a world, including special states.
Generalized BlockData classes.
Classes relating to the specialized enhancements to item stacks, as part of the meta data.
Interfaces for non-voxel objects that can exist in a world, including all players, monsters, projectiles, etc.
Events relating to when a block is changed or interacts with the world.
Events relating to entities, excluding some directly referencing some more specific entity types.
Events relating to inventory manipulation.
Events relating to players.
Classes to facilitate world generation implementation.
Classes involved in manipulating player inventories and item interactions.
The interfaces used when manipulating extra data can can be stored inside item stacks.
Classes that represents various voxel types and states.