默认情况下,C#枚举实现了哪些接口

mic*_*ael 5 c# enums interface .net-4.5

基本上,如果我在C#中声明一个枚举,默认情况下它会实现哪些接口?

public enum Group
{
    Unknown,
    Children,
    Teens,
    YoungAdults,
    Adults,
}
Run Code Online (Sandbox Code Playgroud)

Ani*_*Ani 15

为什么不找出一个简单的程序?

foreach(var interfaceType in typeof(Group).GetInterfaces())
{
   Console.WriteLine(interfaceType);
}
Run Code Online (Sandbox Code Playgroud)

输出:

System.IComparable
System.IFormattable
System.IConvertible
Run Code Online (Sandbox Code Playgroud)

仅供参考,所有这些都来自枚举基类型System.Enum,根据MSDN,它具有以下声明:

[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class Enum : ValueType, 
    IComparable, IFormattable, IConvertible
Run Code Online (Sandbox Code Playgroud)