程序包 org.bukkit.event

# 类 HandlerList

java.lang.Object
org.bukkit.event.HandlerList

public class HandlerList extends Object
一个处理事件的类, 存储每个事件。基于 lahwran's fevents.

- ## 构造器概要

  构造器
  构造器
  说明
  `HandlerList()`
  用EventPriority来创建和初始化一个新的HandlerList.

- ## 方法概要

  修饰符和类型
  方法
  说明
  `void`
  `bake()`
  合并(bake)一个HashMap和ArrayLists到二维数组 - 如果不必要，什么也不会做.
  `static void`
  `bakeAll()`
  合并(bake)所有处理器列表.最好用在所有正常的事件注册完毕后,即所有插件都加载完了,如果你使用fevents插件系统.
  `static @NotNull ArrayList<HandlerList>`
  `getHandlerLists()`
  获取每个事件类型的所有处理器的列表.
  `@NotNull RegisteredListener[]`
  `getRegisteredListeners()`
  获取与这个处理器列表相关的已注册的监听器.
  `static @NotNull ArrayList<RegisteredListener>`
  `getRegisteredListeners(@NotNull Plugin plugin)`
  获取与这个处理器列表相关的指定插件注册的监听器.
  `void`
  `register(@NotNull RegisteredListener listener)`
  在处理器列表中注册一个监听器.
  `void`
  `registerAll(@NotNull Collection<RegisteredListener> listeners)`
  在处理列表中注册一个监听器集合(批量注册监听器).
  `void`
  `unregister(@NotNull Listener listener)`
  从这个处理列表移除一个指定的监听器。
  `void`
  `unregister(@NotNull Plugin plugin)`
  移除一个插件中指定的监听器.
  `void`
  `unregister(@NotNull RegisteredListener listener)`
  从一个指定的排序的插槽删除一个监听器.
  `static void`
  `unregisterAll()`
  从所有处理器列表中注销所有监听器.
  `static void`
  `unregisterAll(@NotNull Listener listener)`
  从处理器列表中注销一个指定的监听器.
  `static void`
  `unregisterAll(@NotNull Plugin plugin)`
  从所有处理器列表中注销指定插件的所有监听器.

  ### 从类继承的方法 java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## 构造器详细资料

  - ### HandlerList

    public HandlerList()
    用EventPriority来创建和初始化一个新的HandlerList.

    HandlerList将会被添加到元列表，为了bakeAll()方法.

    原文：Create a new handler list and initialize using EventPriority.

    The HandlerList is then added to meta-list for use in bakeAll()

- ## 方法详细资料

  - ### bakeAll

    public static void bakeAll()
    合并(bake)所有处理器列表.最好用在所有正常的事件注册完毕后,即所有插件都加载完了,如果你使用fevents插件系统.

    原文：Bake all handler lists. Best used just after all normal event registration is complete, ie just after all plugins are loaded if you're using fevents in a plugin system.

  - ### unregisterAll

    public static void unregisterAll()
    从所有处理器列表中注销所有监听器.

    原文：Unregister all listeners from all handler lists.

  - ### unregisterAll

    public static void unregisterAll(@NotNull @NotNull Plugin plugin)
    从所有处理器列表中注销指定插件的所有监听器.

    原文：Unregister a specific plugin's listeners from all handler lists.

    参数:
      `plugin` - 要注销监听器的插件

  - ### unregisterAll

    public static void unregisterAll(@NotNull @NotNull Listener listener)
    从处理器列表中注销一个指定的监听器.

    原文：Unregister a specific listener from all handler lists.

    参数:
      `listener` - 要注销的监听器

  - ### register

    public void register(@NotNull @NotNull RegisteredListener listener)
    在处理器列表中注册一个监听器.

    原文：Register a new listener in this handler list

    参数:
      `listener` - 要注册的监听器

  - ### registerAll

    public void registerAll(@NotNull @NotNull Collection<RegisteredListener> listeners)
    在处理列表中注册一个监听器集合(批量注册监听器).

    原文：Register a collection of new listeners in this handler list

    参数:
      `listeners` - 要注册的监听器

  - ### unregister

    public void unregister(@NotNull @NotNull RegisteredListener listener)
    从一个指定的排序的插槽删除一个监听器.

    译注：“插槽”的意思见本类的handlerslots变量.

    原文：Remove a listener from a specific order slot

    参数:
      `listener` - 要移除的监听器

  - ### unregister

    public void unregister(@NotNull @NotNull Plugin plugin)
    移除一个插件中指定的监听器.

    原文：Remove a specific plugin's listeners from this handle

    参数:
      `plugin` - 要移除监听器的插件

  - ### unregister

    public void unregister(@NotNull @NotNull Listener listener)
    从这个处理列表移除一个指定的监听器。

    原文：Remove a specific listener from this handler

    参数:
      `listener` - 要移除的监听器

  - ### bake

    public void bake()
    合并(bake)一个HashMap和ArrayLists到二维数组 - 如果不必要，什么也不会做.

    原文：Bake HashMap and ArrayLists to 2d arrays - does nothing if not necessary

  - ### getRegisteredListeners

    @NotNull public @NotNull RegisteredListener[] getRegisteredListeners()
    获取与这个处理器列表相关的已注册的监听器.

    原文：Get the baked registered listeners associated with this handler list

    返回:
      注册过的监听器的数组

  - ### getRegisteredListeners

    @NotNull public static @NotNull ArrayList<RegisteredListener> getRegisteredListeners(@NotNull @NotNull Plugin plugin)
    获取与这个处理器列表相关的指定插件注册的监听器.

    原文：Get a specific plugin's registered listeners associated with this handler list

    参数:
      `plugin` - 要获取监听器的插件
    返回:
      注册的监听器列表

  - ### getHandlerLists

    @NotNull public static @NotNull ArrayList<HandlerList> getHandlerLists()
    获取每个事件类型的所有处理器的列表.

    原文：Get a list of all handler lists for every event type

    返回:
      所有处理器的列表