[英]Object pattern to collect the data while executing a business function
我有一个执行业务功能的类,入口点方法调用了多种方法。
public class Tool
{
public void runTool()
{
methodA();
methodB();
methodC();
printToolSummary();
}
}
这些方法中的每个method*
被称为执行特定的子功能,我想将这些方法中每个方法的感兴趣结果/属性收集到一个摘要对象中。 这些method*
不是要返回的单个值。
我当时在想一个包含所有感兴趣属性的对象,将该对象传递给每个方法并让该方法设置属性,但是以某种方式使用可变对象听起来并不正确,因为无法防止methodA从不应该更新属性,还是我担心太多?
如果您担心方法不应该接触对象的某些部分,那么您传递给方法的对象应实现多个接口,每个接口仅公开您希望作用方法接触的属性。
所以methodA可以期望一个类型为A的类,而methodB可以期望一个类型为B的类,其中A和B是接口...
否则,您的方法实际上并没有什么错,这很普遍。
如何使用包含每个方法的子类的复杂对象。 例如:
public class ResultA { // some attributes for Method A }
public class ResultB { // some attributes for Method B }
public class ResultC { // some attributes for Method C }
public class Result {
private ResultA resultA;
private ResultB resultB;
private ResultC resultC;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.