En Scala, une classe du primaire constructeur n'a pas explicite du corps, mais est définie implicitement dans le corps de la classe. Alors, comment fait-on la distinction entre les champs et les valeurs locales (c'est à dire les valeurs locales à la méthode constructeur)?
Par exemple, prenez le fragment de code suivant, une modification de la forme d'un exemple de code à partir de "Programming in Scala":
class R(n: Int, d: Int) {
private val g = myfunc
val x = n / g
val y = d / g
}
Ma compréhension est que cela permet de générer une classe avec trois champs: un privé "g", et le public "x" et "y". Toutefois, la valeur g est utilisé uniquement pour le calcul des champs x et y, et n'a pas de sens au-delà de l'constructeur de portée.
Donc, dans ce (certes artificielle), par exemple, comment allez-vous définir les valeurs locales pour ce constructeur?