使用lombok,我有兴趣通过其构造函数将基类实例中的所有字段复制到派生类,非常类似于C ++复制构造函数。目前关注的问题不在于副本是深入还是浅薄。 我有一个基类,如下所示,
class Parent {
.... fields
}
我有兴趣自动生成一个派生类构造函数,它接受基类实例并将所有字段复制(浅或深)到派生的字段。 e.g。
class Child extends Parent {
... derived fields
Child(Parent p) { // can be implemented as super(p);
}
}
我可以根据需要灵活地注释 Parent 和 Child 类,但是不想手工编写构造函数,它会逐个复制每个字段。 用法示例
Parent parent = Parent.of(....);
Child child = new Child(parent);
答案 0 :(得分:1)
看起来复制构造函数的功能还没有(github issue)
而且它也不可能生成调用super的构造函数(声明here和github issue),因为:
到达父类所需的分辨率,根本不可能。
基于此,我认为目前无法做到这一点,