Le code suivant ne se compile pas. Pourquoi Santorin ne peut pas manger HorseFood? Tornado est déclaré comme nouveau Horse, et Horse est un sous-type de Animal, mais il peut "manger" HorseFood. import scala.io.StdIn._ import util._ class Food abstract class Animal { type SuitableFood <: Food ....
6 juin 2019 à 18:31
Considérant Bulldog: trait Animal { type Food def defaultFood(): Food } class Bulldog extends Animal { type Food = Steak ... implementations ... } La fonction Bulldog.defaultFood() fonctionne très bien pour le compilateur (bien que mon surligneur de syntaxe ait donné une erreur, ce n'est ....
28 févr. 2017 à 01:17
L'erreur est illustrée ci-dessous: trait Base { type T } trait Component { self: Base => override type T <: MyT val factory: Factory trait Factory { def get_t: T } trait MyT { def xxx: Unit } class User { val t: T = factory.get_t def yyy = t.xxx } } trait ComponentImpl { ....
7 févr. 2016 à 13:24