Если вы поместите перечисления в класс, вам нужно будет указывать имя класса каждый раз, когда вы используете его вне класса, например:
SomeLongClassName x = new SomeLongClassName(SomeLongClassName.Game.High, SomeLongClassName.Switch.On);
вместо:
SomeLongClassName x = new SomeLongClassName(Game.High, Switch.On);
Вы можете решить поместить перечисление в класс, если оно используется только этим классом, но такая изоляция работает только для классов. Если у вас есть перечисление, которое используется только одним методом, вы не можете поместить его в метод.