3.2 类别(Categories)与 Mixins 3.2 类别(Categories)与 Mixins 在面向对象编程的宏大叙事中,继承与组合构成了类之间关系的基石。然而,随着软件系统的日益复杂,传统的静态继承结构逐渐显露出其僵化的一面。当我们面对一个已经封闭的第三方类库,或者需要为现有核心领域模型添加临时性行为而不希望污染其原始定义时,经典的继承机制往往显得力不从心。这正是“表达式问题”(The Expression Problem)在现代语言设计中的具体投射:如何在不需要修改现有代码的前提下,为既有数据类型添加新的操作?Groovy 语言作为运行在 Java 虚拟机之上的动态利器,其元编程能力为此提供了一套优雅且强大的解决方案。