19:14

Зверь-чародей
Знатоки Java,

мне надо определить набор enumов, которые будут наследоваться от чего-то/имплементировать что-то, чей тип я буду передавать в качестве параметра и у чего будет единый для всех статический метод.

Вопрос: как?
enum нельзя экстендить, а в интерфейсах нельзя объявлять статические методы.

Конечная цель - передать класс любого из этих енумов в функцию, которая вызовет этот статический метод.

@темы: Вопросы

Комментарии
08.07.2008 в 23:43

главное ебашилово, мои дорогие)
о боги.. ты загрузил мой мозг..
09.07.2008 в 11:48

Настоящему индейцу завсегда везде ништяк
Сделай Utility класс, который враппит статически заимплементированные enum-ом функции интерфейса.
09.07.2008 в 13:01

Не совсем понятно что именно ты хочешь делать. Напиши пример кода, как если бы можно было проэкстендить енум или определить статический метод в интерфейсе.

PS. В интерфейсе, хоть и нельзя определить статический метод, но можно определить статический inner class со статическим методом.

Собственно не очень понятно, почему нужен статический метод именно в суперинтерфейсе енумов -- по сути, статический метод может быть где угодно и это просто вопрос структуризации кода, т.к. физически он всё-равно принадлежит не объекту инстанса, а объекту типа, поэтому никакой разницы от выноса его в утилити/хелпер класс, как предложили выше, нет.
09.07.2008 в 23:40

pyatzvezd.ru
АААА Ненавижу ООП