Qualcuno può spiegarmi quale sia il motivo di sovrascrivere le implementazioni della classe base (se non è astratto), perché non è una mossa etica modificare le caratteristiche della classe genitore secondo i desideri delle classi derivate. Il modo migliore è rendere astratte le classi di base e portare avanti la catena ereditaria. Mentre inizialmente progettiamo una gerarchia di classi raccogliamo o ricaviamo tutti i requisiti / caratteristiche essenziali che dovrebbero appartenere a una classe base. Pertanto, nel bel mezzo di un progetto non è necessario modificare le implementazioni della classe base. Secondo le mie conoscenze, l'implementazione della classe base dovrebbe essere una costante. Quindi, sotto questo aspetto, non c'è un vero uso della parola chiave "override" in c #. Se non è così, per favore spiegami un esempio.