public virtual class parent {
public static void doStuff(){system.debug('stuff');}
}
public class child extends parent{}
Quando chiamoSalesex Apex supporta l'ereditarietà dei metodi statici?
child.doStuff();
ottengo questo errore: Metodo non esiste o firma non corretta: child.doStuff()
sono metodi statici non ereditati in Salesforce o sto facendo qualcosa di sbagliato ?
In realtà, in base alla risposta qui: http://stackoverflow.com/questions/5316705/overriding-properties-from-abstract-class-in-salesforce-apex 'virtual' può essere utilizzato solo sui metodi. –
Non solo virtuale può essere utilizzato sulle classi, ma deve essere se la classe verrà ereditata da. E no, non significa che ogni metodo deve essere implementato. "Virtuale" quando applicato a un metodo significa che il metodo PUO essere sovrascritto. E "virtuale" quando applicato a una classe significa che può essere ereditato da. – naomi
Penso che il problema non sia relativo. Penso che questo riguardi il metodo statico pubblico della classe genitore che non è visibile usando il moniker della classe figlio. Nella teoria OOP l'esempio dovrebbe funzionare e il compilatore dovrebbe consultare la classe genitore prima di rifiutare il nome del metodo. – mmix