所有子类中方法的默认行为

时间:2015-03-18 15:52:58

标签: groovy

在我的(静态编译的)Groovy应用程序中,我构建了一个类似树的数据结构。该树仅由子类的实例构建,这些子类共享相同的基类。我会定期调用根节点的update()方法,该方法调用其所有子节点的update(),依此类推,直到树的每个叶子。

假设我有一个TreeNode基类和一堆子类ChildNode1ChildNode2ChildNode3。树是从那些ChildNode类构建的,每个类可以在树中多次出现(但作为不同的实例)。

现在我需要衡量在每个update()课程中积累的每个ChildNode方法花费的总时间。

我不想直接在每个update()方法的开头和结尾测量时间,因为我正在编写一个库,而其他开发人员可能会根据TreeNode添加更多节点类。我也不想强迫他们自己做时间测量。

我希望很清楚我想要实现的目标。在(静态)Groovy中是否有某种方式,类似于Python中的装饰?

0 个答案:

没有答案