martedì 15 agosto 2017

C# e metod hiding: ecco come fare

In questi giorni di vacanza mi sono ritrovato a leggere alcuni articoli che riguardavano i vari metodi per implementare l'hiding e l'override dei metodi di una classe in C#.
La questione personalmente mi è sempre sembrata pedante e assolutamente poco interessate, ma da contraltare spesso mi sono accorto che questa parte nasconde diverse insidie: per tale motivo ho pensato di scriverne un post sopratutto per averne un memento.
Inizierà il post espondendo alcune note iniziali al fine di inquadrare meglio il problema.

La questione in analisi riguarda la situazione in cui si scrive un metodo in una classe base, e in una classe da questa derivata, si riscrive un metodo con stessa firma (cioè con stesso, lista parametri e valore di ritorno).
Oss.: Qui si parlerà di metodi, ma tutto quanto esposto vale anche per le proprietà esposte dalla classe.
Occorre dire che in situazione "normali" il metodo implementato all'interno della classe derivata “sovrascrive” il metodo della classe base: detto in altri termini se instanzia la classe derivata il metodo sovrasrcitto della classe base verrà ignorato, e verrà eseguito, come ci si aspetta (?) , il codice implementato all'interno del metodo della classe derivata.

Nessun commento:

Posta un commento

® Wavesoft.it 2016 - Vietata la riproduzione dei contenuti.