我有一类带有一些默认/共享功能的类。我用abstract class
它:
public interface ITypeNameMapper
{
string Map(TypeDefinition typeDefinition);
}
public abstract class TypeNameMapper : ITypeNameMapper
{
public virtual string Map(TypeDefinition typeDefinition)
{
if (typeDefinition is ClassDefinition classDefinition)
{
return Map(classDefinition);
}
...
throw new ArgumentOutOfRangeException(nameof(typeDefinition));
}
protected abstract string Map(ClassDefinition classDefinition);
}
如您所见,我也有接口ITypeNameMapper
。如果我已经有一个抽象类,TypeNameMapper
或者abstract class
已经足够,定义这个接口是否有意义?
TypeDefinition
在这个最小的例子中也是抽象的。