枚举代码如下
package com.mydomain
object Market extends Enumeration {
type Market = Value
val ASX, LSE = Value
}
我试着这样使用
import com.mydomain.Market._
。..
if (Market.ASX == currentMarket) {
...
}
当所有东西都在同一个包中时,这是有效的。当我移动到一个新包时,我现在得到
not found: value Market
如果导入Market
,则可以直接使用ASX
和LSE
。您没有可用的Market.ASX
—如果您有可用的对象Market
,这就是如果您有import com.mydomain._
会发生的情况。
在com.mydomain
包内会导致com.mydomain._
被加载,就像你导入它一样,所以这就是为什么当你在同一个包中时你可以使用Market.ASX
。
当您在不同的包中编写代码时,您需要使用import com.mydomain._
然后使用Market.ASX
,或者使用import com.mydomain.Market._
然后使用ASX
。