任何人都可以提供抽象接口模式的解释。
“使用.NET 4.0的N层面向域架构指南”一书参考了这种模式,但没有解释。
答案 0 :(得分:0)
我认为这意味着有一个接口,一个实现该接口的抽象类,然后是几个从抽象类继承的非抽象类。在C#代码中:
interface IFoo
{
// interface members
}
abstract class FooBase : IFoo
{
// implementation of IFoo and potentially some helper methods
// some methods can be abstract, some virtual
}
class ConcreteFoo : FooBase
{
// overrides abstract members of FooBase and potentially some virtual ones
}
使用此模式的优点是它将接口(灵活性)的好处与抽象基类(共享实现)的好处结合起来。
答案 1 :(得分:0)
抽象接口在C#中并不存在。在C ++中,你有一个“纯抽象”类的概念,其中所有方法都是抽象的,因此它是一个只定义接口的抽象类。
在C#中,我们使用'interface'关键字,它完全相同。