Czesc,
potrzebuje pomysl na funkcje ktora przyjmuje obiekty roznych klas, ma ktos pomysl jak to uogolnic ? np type() mogla przyjmowac tez obiekt klasy kwadrat, doradzi cos ktos ? ;)
def type(t1: trojkat): Unit = {
}
Czesc,
potrzebuje pomysl na funkcje ktora przyjmuje obiekty roznych klas, ma ktos pomysl jak to uogolnic ? np type() mogla przyjmowac tez obiekt klasy kwadrat, doradzi cos ktos ? ;)
def type(t1: trojkat): Unit = {
}
trait Shape
class Triangle extends Shape
class Square extends Shape
def `type`(t1: Shape): Unit
Hasło brzmi: Polimorfizm i implementacja interfejsów
Chociaż w przypadku Scali są to cechy (ang. traits)
a co w sytuacji gdy chce w funkcji type(t1: Shape, t2: Shape) porownac t1 == t2, bo gdy w przekazuje t1 = new Triangle i w Triangle mam def == ale ta funkcja nie zostaje wtedy uzyta uzyta
Shape== a equals które jest używane przez ==.== to możliwe że potrzebujesz CASE CLASSESuzywam traits i wszystko sprawdza sie super jedynie nie moge rozw tego problemu z porownaniem np w klasie Triangle extends Shape
def == (that Triangle): Boolean ={
side == that.side
ale chcialbym zrobic override def ==
tylko sygnatura == w Shape nie pasuje tu
def == (that Shape): Boolean