1
我試了一下:如何實現一個具有多個獨立公共接口的案例類?
object LolTest {
trait Foo {
def foo: Int // getter
def foo(i: Int): Foo // setter
}
trait Bar {
def bar: String // getter
def bar(s: String): Bar // setter
}
case class Buzz(foo: Int, bar: String) extends Foo with Bar {
override def foo(i: Int): Buzz = copy(foo = i)
override def bar(s: String): Buzz = copy(bar = s)
}
}
但我真正的類應該有很多領域(約10)。不得不在特定的類中實現setter(更新者,變換器?)而不是特性看起來......錯了。而且我越來越多的問題試圖爲班級添加不同的設置者。
我會很感激這個問題的建議。
爲什麼不直接使用的情況下,類與十個字段? https://github.com/alexandru/scala-best-practices/blob/master/sections/2-language-rules.md#24-should-not-define-useless-traits – leshkin
@leshkin:封裝不同的「意見「由不同用戶的班級。 「程序接口」等等。 –