Ich übe diesen Code von JavaTpoint zum Erlernen der Vererbung in Scala. Aber ich kann nicht auf das Mitglied Bike von der Klasse Fahrzeug zugreifen, dessen Wert auf Null initialisiert ist. Ich versuchte es mit einem Supertype-Verweis, aber es zeigt immer noch den überschriebenen Wert an. Kannst du mir sagen, wie ich mit einer Instanz der Bike-Klasse auf den Wert speed = 0 zugreifen kann? Hier ist der Code und die Ausgabe. Vielen Dank im Voraus.Zugriff auf Mitglieder der Superklasse mit einer Instanz der Unterklasse
class Vehicle{
val speed = 0
println("In vehicle constructor " +speed)
def run(){
println(s"vehicle is running at $speed")
}
}
class Bike extends Vehicle{
override val speed = 100
override def run(){
super.run()
println(s"Bike is running at $speed km/hr")
}
}
object MainObject3{
def main(args:Array[String]){
var b = new Bike()
b.run()
var v = new Vehicle()
v.run()
var ve:Vehicle=new Bike()
println("SuperType reference" + ve.speed)
ve.run()
}
}
1) Speichern Sie den Wert in ein neues Feld in Bezug auf das Speichern in einem anderen Speicherort. Es weicht dem Zugang aus. 2) Das übergeordnete Ding funktioniert! – Learner