|
Scala example source code file (traits.scala)
The Scala traits.scala source codeobject Test { type Color = Int trait Shape { override def equals(other: Any) = true } trait Bordered extends Shape { val thickness: Int override def equals(other: Any) = other match { case that: Bordered => this.thickness == that.thickness case _ => false } } trait Colored extends Shape { val color: Color override def equals(other: Any) = other match { case that: Colored => this.color == that.color case _ => false } } trait BorderedColoredShape extends Shape with Bordered with Colored { override def equals(other: Any) = other match { case that: BorderedColoredShape => ( super.equals(that) && super[Bordered].equals(that) && super[Colored].equals(that)) case _ => false } } val bcs1 = new BorderedColoredShape { val thickness = 1 val color = 0 } val bcs2 = new BorderedColoredShape { val thickness = 2 val color = 0 } Console.println(bcs1 == bcs1) Console.println(bcs1 == bcs2) } Other Scala examples (source code examples)Here is a short list of links related to this Scala traits.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.