ENSIMEやめた。
多重継承はできないけど、トレイトを使うことで複数のトレイトをミックスインできる。
scala> trait Programmer { | def coding = println("コーディングします") | } defined trait Programmer scala> scala> // クラスが明示的に継承を行わない場合、extendsを使用してトレイトをミックスイン scala> class Person(val name: String) extends Programmer defined class Person scala> scala> val p = new Person("taro") p: Person = Person@fd551eb scala> scala> p.coding コーディングします scala> scala> trait Designer { | def design = println("デザインします") | } defined trait Designer scala> scala> // ほかのクラス/オブジェクトを継承する場合、withキーワードでトレイトをミックスインする scala> val p = new Person("taro") with Designer p: Person with Designer = $anon$1@4142991e scala> scala> p.coding コーディングします scala> scala> p.design デザインします