upcast virker ikke, men det også helt okay.. undrede mig bare lidt over om man kunne... meningen med arv er jo at man ikke skal gentage sig så vidt jeg har forstået... eller genbruge allerede skrevet kode.
men det vil altså sige man skal ind og lave nogen metoder så det svaret er altså at det ikke er muligt.. så ville svaret nok have været noget lignende det arne skrev.. altså ((Klasse1)this).toString()
så ved jeg det! så behøver jeg ikke tænke over det mere hehe
ja det gjorde jeg! men måske kan arne give mig ret i, at grunden til at der kommer en fejl er fordi den kalder sin egen toString metode og ikke Klasse1's toString metode... og det bliver den ved med.. dvs den kører rundt..
jeg rimelig sikker på det er det der sker.. men måske har arne noget at tilføje: ) det trods alt hans forslag hehe
Hvis metoden toString er defineret som en statisk metode kan du kalde Klasse1's toString metode ved at caste dit objekt til Klasse1.
men hvis metoden ikke er statisk er det ligemeget hvad du caster en Klasse3 instans til, det vil stadig være Klasse3's toString metode der bliver kaldt.
( der er dem der kalder det en bommert i Javasproget, men jeg kan ikke rigtig se hvordan det kan være anderledes :)
Men man kan selvføgelig altid kalde Klasse1.metodenavn hvis den er static.
Man har valgt at lave alle metoder virtual i Java.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.