子类重写方法中需要更多参数

问题描述 投票:0回答:1

我在我的学习项目中使用 ddd。存储库使用域类并在内部将它们映射到持久性类。在基础存储库中,我有方法

Add(domainClass)
,在子类 UserRepository 中,我需要一个方法
Add(domainClass, passwordHash, passwordSalt)
来注册新用户,并且我在domainClass中没有这两个字段,因为我没有任何域逻辑需要他们。

oop inheritance repository domain-driven-design ddd-repositories
1个回答
0
投票

你不需要写你正在使用哪种语言,但假设像Java或C#这样的主流语言,如果你在基类(或接口)中定义了一个方法,那么你不能在派生类或实现类中更改它.

一种选择是使额外参数成为对象的一部分(我认为是

domainClass
?)。

另一种选择是通过构造函数传递额外的参数

© www.soinside.com 2019 - 2024. All rights reserved.