Ho una classe A, con un metodo doAction astratta (BaseClass obj) in attesa di un param di tipo BaseClassPassando classe derivata per un metodo che ha bisogno di ignorare in attesa di un classe base
public class A {
//....
abstract void doAction(BaseClass obj);
//....
}
Ora, ho un altro la classe B che deve estendere A. Tuttavia, il metodo doAction di B deve utilizzare un oggetto DerivedClass che estende BaseClass.
public class B extends class A {
//..
void doAction(DerivedClass obj) {
obj.callMethodAvailableOnlyInDerivedClass();
}
}
Come faccio a gestire questa situazione in cui ho bisogno di passare param di tipo DerivedClass al metodo per essere sovrascritto mentre si aspetta un BaseClass?
Grazie!
+1 per il principio di Liskov. La prima volta che ne sento parlare, grazie! – GETah
E se hai un sacco di questi metodi che agiscono su oggetti diversi ?! –