переопределить метод абстрактного перечисления

Следующий допустимый код Java:

enum ProductType {
  CASH_BONUS { 

     void doSomething() {}    
  },

  CUSTOMIZABLE { 
     void doSomething() {}    
  }

  abstract void doSomething()
}

Но когда я пытаюсь запустить его в консоли Groovy, я получаю ошибки:

Не может быть абстрактного метода в неабстрактный класс. Класс Необходимо указать ProductType. abstract или метод void doSomething () 'должен быть реализован. в строке: -1, столбце: -1

Не может быть абстрактного метода в неабстрактный класс. Класс Необходимо указать ProductType. abstract или метод void doSomething () 'не должно быть абстрактным. at line: 11, column: 3

Кажется, я помню, как читал, что Groovy (пока) не поддерживает методы переопределения для констант перечисления, правильно ли это, и если да, то есть ли элегантный способ имитировать такое поведение?

Обновление

Это была ошибка, которая была исправлена ​​некоторое время назад в Groovy 1.8.0

5
задан Dónal 28 May 2015 в 09:28
поделиться