Я хотел бы добиться чего-то подобное тому, как Scala определяет Map
, как и предопределенный type
и object
. В Predef
:Использование псевдонимов типов в Java перечислений
type Map[A, +B] = collection.immutable.Map[A, B]
val Map = collection.immutable.Map //object Map
Однако, я хотел бы сделать это с помощью Java enum
с (из общей библиотеки). Так, например, я бы некоторые глобальные псевдоним:
type Country = my.bespoke.enum.Country
val Country = my.bespok.enum.Country //compile error: "object Country is not a value"
Причина этого заключается в том, что я хотел бы иметь возможность использовать такой код:
if (city.getCountry == Country.UNITED_KINGDOM) //or...
if (city.getCountry == UNITED_KINGDOM)
Howver, это не возможно, в то время как одновременно импортируя псевдоним типа. Примечание: этот код будет работать нормально, если я не объявил предопределенный тип и не импортировал его! Есть ли какой-то синтаксис, который я могу использовать для достижения этого?
Alexandre - это вопрос ** Scala ** - не Java один! –
Изменен ответ для Scala –