我正在为服务编写客户端包装器。 哪些已经给客户实施。有两个类层次结构:
这两个类都没有共享公共父接口。但是他们在使用它们时有类似的实现:
执行代码的示例
您需要遵循以下代码的帐户服务:
final AccountsCustomBatchRequest content = new AccountsCustomBatchRequest();
content.setEntries(request);
final AccountsCustomBatchResponse response = this.service.accounts().custombatch(content).setDryRun(this.isDryRun)
.execute();
return response.getEntries();
类似于产品:
final ProductsCustomBatchRequest content = new ProductsCustomBatchRequest();
content.setEntries(request);
final ProductsCustomBatchResponse response = this.service.products().custombatch(content).setDryRun(this.isDryRun)
.execute();
return response.getEntries();
有没有办法概括代码?我不能使用通用模式作为那些不支持普通父类的模式。 我可以这样做:
T extends Account or Product ?
答案 0 :(得分:0)
他们分享此方法:custombatch(content)
我会创建一个包含custombatch
方法的界面,并制作类似T extends custombatchInterface
答案 1 :(得分:0)
如果两个类不共享相同的层次结构,那么您无法将它们组合在一起。一种可能的方法是使用方法CustomBatchInterface
创建一个新的接口custombatch(content)
并创建两个classes
extends
ProductsCustomBatchResponse
和AccountsCustomBatchResponse
implements
CustomBatchInterface
。{{1}}。