В общем, можете ли вы объявить val в scala перед присвоением ему значения? Если нет, то почему нет? Примером, где это может быть полезно (по крайней мере, в моем случае), является то, что я хочу объявить val, который будет доступен в большем объеме, чем когда я его назначу. Если я не могу этого сделать, как мне добиться желаемого поведения?
И я хочу, чтобы это было val, а не var, потому что после того, как он назначен, он НИКОГДА не должен меняться, поэтому var не идеален.
Например:
object SomeObject {
val theValIWantToDeclare // I don't have enough info to assign it here
def main(): Unit = {
theValIWantToDeclare = "some value"
}
def someOtherFunc(): Unit {
val blah = someOperationWith(theValIWantToDeclare)
}
}