相信你一定对这个成语很熟悉,这算是java给闭包找的借口吧
//In the "Resource Manager" class
public void process(Command cmd){
//Initialize
ExpensiveResource resource = new ExpensiveResource();
//Use
cmd.execute(resource);
//Release / Close
resource.close();
}
//In the Client class...
manager.process(new Command(){
public void execute(ExpensiveResource res){
//Do things with the resource
}
});
我经常使用这种成语/模式,但最近我尝试对其进行测试,这让我很头疼......
如何独立测试 ResourceManager 和 Client 类?我发现这将它们紧密结合在一起,以至于你不能轻易做到。
想法受到赞赏。
问候