boh*_*anl 2 java design-patterns
试图找到一种包装对象的方法,该对象是基于一些具有大量 getter 和 setter 的模型自动生成的。例如:
class ObjectToWrap {
public int getIntA();
public int getIntB();
... // Tons of other getters
}
Run Code Online (Sandbox Code Playgroud)
我必须创建一个包装这个对象的包装器,并使用一些ObjectToWrap
为我生成方法的注释。代码如下所示:
class Wrapper {
private ObjectToWrap obj;
public int getIntA() {
return obj.getIntA();
}
public int getIntB() {
return obj.getIntB();
}
... // Tons of other getters
}
Run Code Online (Sandbox Code Playgroud)
有没有注释可以做到这一点?我只是不想让代码看起来很长。
看看 Project Lombok,它有一个 @Delegate 注释,它完全符合你的要求。
我认为你可以这样做:
import lombok.Delegate;
class Wrapper {
//the types field in the annotation says
//to only auto generate deleagate methods
//for only the public methods in the ObjectToWrap class
//and not any parent classes if ObjectToWrap extended something
@Delegate(types = ObjectToWrap.class)
private ObjectToWrap obj;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2475 次 |
最近记录: |