我只是想知道是否可以在Scala中重複密封特徵? 如果沒有,爲什麼不可能?既然這個特質是密封的,它應該是不可能的?斯卡拉密封特徵的迭代?
我想要做的就是這樣的事情:
sealed trait ResizedImageKey {
/**
* Get the dimensions to use on the resized image associated with this key
*/
def getDimension(originalDimension: Dimension): Dimension
}
case class Dimension(width: Int, height: Int)
case object Large extends ResizedImageKey {
def getDimension(originalDimension: Dimension) = Dimension(1000,1000)
}
case object Medium extends ResizedImageKey{
def getDimension(originalDimension: Dimension) = Dimension(500,500)
}
case object Small extends ResizedImageKey{
def getDimension(originalDimension: Dimension) = Dimension(100,100)
}
我想可以在Java通過給一個實現枚舉值來完成。在Scala中是否有相同的內容?
不是[這](https://gist.github.com/ea5e46a2f392204993fa)你想要什麼? –
謝謝!試圖瞭解爲什麼我不能使用案件對象;) –