接口(interface)与基类对我来说仍然是一个相当灰色的领域。我正在阅读一本关于 ASP.NET 3.5 企业开发的书,作者指出所有表都将具有以下字段:
InsertDate
InsertENTUserAccountId
UpdateDate
UpdateENTUserAccountId
Version
如果这是我对上述要求进行编码,我将创建一个包含这些字段的基本业务对象类,并且所有业务对象都将从它继承。但是,作者将它们创建为接口(interface)。馊主意?好主意?没关系?
更新
有一个实现此接口(interface)的基类。似乎所有业务对象都将从基础继承。但即便如此,我还是会把这个接口(interface)放在基类中......?
最佳答案
好吧,通常首选接口(interface),因为它允许更大的灵 active 和抽象性 - 但您可以通过使用 abstract
来实现这两者。基类实现接口(interface)。然后 95% 的时间你使用基类,当你需要不同的东西时,你只使用接口(interface)。
只是不要从您的业务代码中触及基类......只有界面。基类只是一个实现细节。
关于c# - 这段代码应该是基类而不是接口(interface)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1263018/