Ho un oggetto di una sottoclasse che estende la sua superclasse. C'è un metodo sovrascritto in sottoclasse che può essere chiamato usando l'oggetto. È possibile chiamare la funzione della superclasse usando l'oggetto sottoclasse?Accesso alla funzione di super classe utilizzando l'oggetto sottoclasse
package supercall;
public class Main {
public static void main(String[] args) {
SomeClass obj = new SubClass();
obj.go(); //is there anything like, obj.super.go()?
}
}
class SomeClass {
SomeClass() {
}
public void go() {
System.out.println("Someclass go");
}
}
class SubClass extends SomeClass {
SubClass() {
}
@Override
public void go() {
System.out.println("Subclass go");
}
}
Prendere in considerazione il codice sopra.
Qui la stampa
sottoclasse andare
. Invece devo stampare
superclasse andare
.
super. Ma a volte userei anche il metodo della sottoclasse. Non è possibile chiamare il metodo della superclasse in qualche modo? qualcosa come obj.super.go() ??? Certo, questo è un costrutto sbagliato. Intendevo qualcosa di simile ?? – bdhar
Ohh uomo ... ho appena scritto quella risposta (non inviata) ... merda !!! – RubyDubee
@bdhar: Sì, puoi semplicemente chiamare 'super'. Ma devi fare quella chiamata da * in * la classe. Non può essere fatto esternamente. –