当一个类只调用另一个有多种方法的类上的一个方法时,如何减少耦合?

我有一个类(让我们称之为
MyService
)在它的构造函数中接受两个依赖项。第一个与问题无关。第二个是
PaymentDetails
。 PaymentDetails的寿命比MyService长,后者由工厂创建以处理此特定请求。 在
MyService.process()
,它: 做一些第一依赖的东西, 构造一个
new TransactionDetails()
对象并在其上设置各种东西, 叫
myPaymentDetails.setTransactionDetails( td );
返回一些内容,说明接下来的向导中的哪个页面
PaymentDetails
必然有很多方法。它是一个实体样式对象,当用户逐步浏览大约5页时,信息就会建立在该对象中。 困扰我的是,写作我的服务类取决于整个
PaymentDetails
但只调用一个方法。 这困扰我,因为: 它将限制重用服务类的能力 通过阅读方法签名无法理解真正的依赖关系 我的问题是: 解决此问题的最佳方法是什么,以便我的服务类具有最小的依赖性?     
已邀请:
您可以创建一个简单的界面:
public interface TransactionAcceptor {
    void setTransactionDetails(TransactionDetails td);
}
PaymentDetails
声明它实现了接口:
public class PaymentDetails implements TransactionAcceptor {
    ...
}
当然,它已经实现了所需的方法。然后
MyService
只需要处理
TransactionAcceptor
接口而不是与
PaymentDetails
耦合。     
添加
interface Transactionable
或其他东西,让PaymentDetails实现它。 在MyService中只处理'Transactionables'。     

要回复问题请先登录注册