在 C# 中,普通的 enum 完全可以用强制类型转换来得到 int 。
int int1 = (int)MessageTypes.REQUEST; // int1 == 1在 C# 中,好象无须如此麻烦生成这么一个中看不中用的类吧。要想序列化,只要使用 [Serializable] 即可。
[Serializable]
public enum MessageTypes
{
  REQUEST = 1,
  RESPONSE = 2,
  NOTIFICATION = 3
}(Java)Comparable 对应的 .Net 接口是 System.IComparable,但两者的定义是否完全类似,我不清楚,因为我没研究过 Java。