Perché il compilatore c # forza un abstract
class
a definire (al contrario di implementare ) tutti i metodi del interface
ereditato? perché non contrassegna i metodi non implementati di un interface
ereditato come abstract
da solo?
Non sono in grado di apprezzare questo vincolo, è perché i progettisti linguistici volevano che il programmatore della classe astratta fosse più riflessivo mentre sceglieva un metodo per essere - abstract
, virtual
o non virtuale? O c'è qualcosa di più grande?