我希望能够像scala定义
这是因为我希望能够使用以下代码:
Map
一样,既是预定义的type
,又是object
。在Predef
中实现: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)
然而,当我同时导入我的类型别名时,这是不可能的。注意:如果我没有声明预定义类型并导入它,这段代码将完美运行!这里有一些语法可以使用来实现这个目标吗?