Hogyan tudok alapértelmezett értéket felhasználni Kotlinban, amit a fő osztályban határoztam meg? Ha nincs öröklés akkor meg tudom oldani, de így nem értem hogyan kéne.
Figyelt kérdés
open class Vehicle (name: String = "Mercedes") {
init {
println("Superclass named it ${name}.")
}
}
*****
class Car(name: String, var numberOfPerson: Int): Vehicle(name) {
init {
println("$numberOfPerson can travel by this $name.")
}
}
*****
fun main() {
var car = Car("BMW", 5)
var car2 = Car(numberOfPerson = 4) //ezt így nem fogadja el, várja a name-t
}
2022. jan. 23. 11:32
1/4 anonim válasza:
Túl kell terhelned a Car osztály konstruktorát, ami csak a numberOfPerson paramétert várja. Így az ősosztály name értéke érvényesül.
2/4 anonim válasza:
Más szóval nincs olyan konstruktorod, ami csak a numberOfPerson paramtért várja, semmi mást. Készítened kell egy ilyen konstruktort.
3/4 anonim válasza:
class Car(name: String, var numberOfPerson: Int): Vehicle(name) {
___constructor(numberOfPerson: Int): this("amit szeretnél", numberOfPerson)
___// ...
}
4/4 A kérdező kommentje:
Az "amit szeretnél helyére" szeretném, ha az ősosztályból megkapná a name értékét, de ha behelyettesítem name-re, akkor "Unresolved reference: name" hibaüzenetet kapok.
2022. jan. 23. 15:14
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!