Finora ho usato per scrivere interfacce per quelle classi che voglio simulare / falsificare. Il motivo è che quelle classi non hanno alcun metodo virtuale per sovrascrivere. Ma recentemente ho capito che potevo usare anche metodi virtuali.
Quando dovrei usare metodi virtuali piuttosto che interfacce?
Dovrei persino rendere la maggior parte dei metodi virtuali per rendere più facile il finto in futuro?