我只想将值与对象一起传递,但是该值与该对象并不完全相关。假设有一个对象调用Request Data

public class RequestData
{
  private int requestId;
  private String status;
 .......
}


我要传递的是,此请求只需要保存或仅打印,或者既保存又打印,同样有多个操作。当我将此请求数据传递到另一个类以验证此requestData时,我想确定它是来自保存或打印还是保存并打印调用。为此,基本上,我可以向该RequestData类添加一个属性。但是根据我在OOP中的学习,我们应该将与该对象直接相关的属性保留为该对象的属性。

那么最好的做法是什么,或者是否有任何设计模式来保存与该类没有直接关系的数据。

最佳答案

你是对的!将不相关的属性放到您的类中会使在另一个不需要该不相关属性的环境中重用该类变得困难。

一个典型的解决方案是创建另一个使用旧类的类:

class SecondRequestData {
    private RequestData origin;
    private bool isSave;
    private bool isPrint;
}

08-16 05:16