タグ

ブックマーク / gakuzo.hatenadiary.org (1)

  • クラスの extends とトレイトの extends の違い - がくぞーのメモ

    Scala の extends と with の意味合いがちょっと解りづらかったので整理してみました。 先に結論を書いておくと以下になります。 extends の直後は必ずクラスになる トレイトは mixin するために必要な条件を持つ これだけだとちょっと何言ってるんだって感じですので、順をおって説明します。まず単純な宣言から見て行きましょう。 class ClassA trait TraitA この単純な宣言はシンタックスシュガーで実現されており、実際に上記のコードは以下のように解釈されます。 class ClassA extends AnyRef trait TraitA extends AnyRef どちらも AnyRefクラスを extends する形となります。しかし ClassA と TraitA では extends の意味合いが大きく異なります。というのも、class C

    クラスの extends とトレイトの extends の違い - がくぞーのメモ
    flower_room
    flower_room 2012/02/25
    ちゃんと読む
  • 1