Groovy 语言支持两种元编程风格:运行时和编译时。第一个允许在运行时改变类模型和程序的行为,而第二个只发生在编译时。两者都有优点和缺点,我们将在本节中详细介绍。