我有一个A类和BM扩展A.现在我想使用eclipse的代码生成选项创建一个B的构造函数,它接受参数并设置B的所有字段的值(我的意思是它还应该设置从A继承的字段) )。
有没有在eclipse中生成此类代码的快捷方式?
答案 0 :(得分:22)
在编辑器中单击鼠标右键,然后单击“源 - >使用字段生成构造函数”。您可以选择要使用的超级构造函数,也可以选择要添加到构造函数的实例变量。
答案 1 :(得分:6)
Eclipse(3.5)没有针对该特定情况的内置选项,但无论如何我建议您在超类中有一个单独的构造函数,子类通过{{1}调用在它的构造函数中。
这将更容易维护。例如,如果你在超类中添加一个字段,你需要记住也要更新子类。
super(...)
答案 2 :(得分:2)
没有自动的方法可以做到这一点,我很接近eclipse团队故意这样做,因为它会导致糟糕的设计。
构造一个类只是初始化对象自己的字段。如果需要在超类上设置(init)字段,请调用超类构造函数,如果需要更改超类字段,请调用超类getter和setter方法。
对我而言,初始化超类字段的设计很糟糕,可以轻松避免。