通过LOMBOK将返回类型绑定到超级类型



是否有可能绑定我试图用@getter注释向supertype展示的字段类型?

例如,我有以下代码:

@AppScope
public final class ProtrocolMessageRepository {
    @Getter
    private final Subject<StartGameResponse> startGameSubject = PublishSubject.create();
    private final Subject<WaitForGameResponse> waitForGameSubject = PublishSubject.create();
    private final Subject<FinishedGameResponse> finishedGameSubject = PublishSubject.create();
}

我试图将startGameSubject字段公开为Observable,而不是SubjectObservableSubject的超级型。

是直接的。但是您可以做这样的事情:

public final class ProtrocolMessageRepository {
    private final Subject<StartGameResponse> startGameSubject = PublishSubject.create();
    @Getter
    private final Observable<StartGameResponse> startGameObservable = startGameSubject;
}

但是,我怀疑这确实值得,因为代码显然不太容易理解,但比在没有Lombok的情况下编写自己的手册Getter短得多。因此,您确实应该手动实施。

最新更新