Skip to content

注解

🕓翻新中

本文中的过时内容正在翻新中,过时部分或许并不适用于最新版本,请仔细甄别。

Mixin 使用一系列注解来实现其强大的代码修改功能。下面是主要注解的列表,点击可以查看每个注解的详细用法和示例。

主要注解

核心

  • - 声明一个类为 Mixin 类,并指定目标。
  • - 引用目标类中已有的成员(字段或方法)。
  • - 声明一个成员是 Mixin 独有的,将其添加到目标类。

注入器 (Injectors)

  • - 在目标方法的特定位置注入代码。
  • - 修改方法调用时的单个参数。
  • - 修改方法调用时的多个参数。
  • - 修改作用域内的局部变量。
  • - 重定向一个方法调用到另一个方法。
  • - 完全覆盖一个目标方法。
  • - (已弃用) 修改常量值。

访问器 (Accessors)

  • - 自动生成字段的 getter/setter。
  • - 允许调用私有或保护方法。

接口与元注解

  • - 让目标类实现一个接口。
  • - 与 @Implements 配合使用或用于"软实现"。
  • - 指定注入点 (Injection Point),用于注入器注解中。
  • - 与@Shadow连用以访问final成员。
  • - 声明一个方法的实现是"固有"的。

高级概念

  • - 在方法中定义一个用于查找注入点的"切片"。
  • - 如何让 Mixin 只在目标类存在时应用。
  • - 控制 Mixin 的应用顺序。

注意

本文档内容很大程度上参考了 项目,并结合了 SpongePowered Mixin Wiki 的信息进行了补充和说明。