使用lombok,我有兴趣通过其构造函数将基类实例中的所有字段复制到派生类,非常类似于C拷贝构造函数.目前关注的问题不在于副本是深入还是浅薄.
我有一个基类,如下所示,
class Parent {
.... fields
}
我有兴趣自动生成一个派生类构造函数,它接受基类实例并将所有字段复制(浅或深)到派生类.例如
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);
最佳答案 看起来复制构造函数的功能还没有(
github issue)
而且它也不可能生成调用super的构造函数(声明here和github issue),因为:
getting to the parent class required resolution, it is simply not possible.
因此,基于此,我认为目前无法做到这一点