在Java中将方法添加到Generated类

时间:2012-11-26 15:20:54

标签: java methods categories auto-generate

我有自动用Java生成的类。我想为该类添加一个方法(在另一个文件中),这样我就可以在不更改生成的文件的情况下添加其他功能。我的想法是,如果我必须重新创建生成的文件,我将不会丢失我的新功能。

在Objective-c中我知道这叫做类别,在JavaScript中你可以附加对象的原型,但我不知道如何用Java或者它所谓的方式来做这个。

4 个答案:

答案 0 :(得分:3)

java不支持。

partial classes/partial class file

您可以做的一件事是继承生成的类(如果它不是最终的)并添加您的方法。

答案 1 :(得分:1)

你可以使用组合,即:

public class JasonString {
   String wrapped;

   public JasonString() {
      wrapped = new String();
   }

   public String toString() {
      return wrapped.toLowerCase().toString();
   }

   // other methods of wrapped class you're using should just call the corresponding method in wrapped.
}

答案 2 :(得分:0)

如果您无权访问生成的类,则可以尝试扩展它(如果生成的类不是最终的)并向子类添加新方法... Java不支持动态属性作为JavaScript。

答案 3 :(得分:0)

我同意@Itay我曾经有过Ibatis自动生成的类,解决问题的最佳方法是扩展所有生成的类并添加你想要的功能。