2017-02-15 57 views
6

我有下面的類:生成構造所需的超領域

import lombok.Getter; 
import lombok.RequiredArgsConstructor; 

@Getter 
@RequiredArgsConstructor 
public abstract class EmailData { 

    private final Iterable<String> recipients; 
} 

和下面的子類:

import lombok.Getter; 

@Getter 
public class PasswordRecoveryEmail extends EmailData { 

    private final String token; 
} 

是否有可能以這樣的方式,對於一個構造函數註釋PasswordRecoveryEmail將生成所需的類和超類字段?

回答

1

@…Constructor註釋將不會顯式調用構造函數,所以它們都依賴於默認的構造函數來執行正確的工作。所以,不,你不能說服Lombok爲你創建這些構造函數。

你可以得到最接近它是要麼:

  1. EmailDataprotected並指定一些合理的價值recipients提供一個默認的構造函數(無參數)。
  2. 自己編寫PasswordRecoveryEmail的必需參數構造函數。

在我的經驗中,龍目島的遺產往往不是很完美。