描述可能是接口(interface)或抽象但不是具体类型的类型的正确术语是什么?

这个问题是由于将 StructureMap 连接为 MVC4 的 IDependencyResolver 的结果。我正在做一些重构并创建了这个:

public object GetService(Type serviceType)
{
  if (serviceType.IsAbstract || serviceType.IsInterface)
  {
    return GetNonConcreteService(serviceType);
  }

  return GetConcreteService(serviceType);
}

private object GetConcreteService(Type serviceType)
{
  return _container.GetInstance(serviceType);
}

private object GetNonConcreteService(Type serviceType)
{
  return _container.TryGetInstance(serviceType);
}

显然 GetNonConcreteService 是一个糟糕的方法名称,这让我想知道是否会有一个同样准确但更好的术语。

最佳答案

为了回答您的代码示例,它们都在 Abstraction 中调用了 .net 。为了证明这一点:

Type type = typeof(IEnumerable); //interface
Console.WriteLine (type.IsAbstract); //prints true

10-05 19:20