JavaとC#のEnum

Effective Java(2nd)を読んでると、JavaEnumがすごく素晴らしいものに思えてくる。
近々C#でプログラムを組む予定があるので、C#Enumはどんなだったかなと思って調べてみたんだけど、デフォルトではTypeSafeEnumじゃないみたい。
C#Enumを使うWeb連載で、Enum型に+1とか平気でするような記事もあるし・・・・・・
もちろんint型実装のEnumだけどさ・・・Enumの安全性利点を消しちゃってるのがなぁ。
そんなわけでTypeSafeEnumを探してたんだけど・・・身近な所に先人がいらっしゃいましたw
http://d.hatena.ne.jp/bleis-tift/20080808/1218133517
前に上げたStrategyEnumが、Enumに振る舞いを持たせる実装に一致するのかな。
C#Enumキーワードを使わない場合の不利益としては・・・switchが使えなくなる?*1
と、それぐらいしか思いつかない。Enum記述に意味ががが・・・
・・・・・・C#Enum実装もJavaっぽくならないかなぁ。

*1:C#のswitch仕様だと、列挙体を渡すと書いてあるが・・・stringの処理も可能だし、もしかしたらできるのかも