1

如何在 XTend (XText) 中将辅助构造函数添加到值对象(使用 @Data 注释)?

我尝试了以下方法,但无法编译:

@Data class Dependency {
    val String groupId;
    val String artifactId;
    val String version;
    val String scope;

    new(String groupId, String artifactId, String version) {
        this(groupId, artifactId, version, null)
    }
} 
4

2 回答 2

2

目前这是不可能的。如果已经定义了一个构造函数,@Data 注释不会创建一个新的。您可以使用自定义 Active Annotation 来根据您的需要定制数据类。

于 2013-03-20T16:29:04.167 回答
1

虽然技术上不是构造函数,但您可以创建工厂方法以多种方式实例化您的数据类。

于 2014-02-27T16:14:36.527 回答