Ciao a tutti. Sviluppo utilizzando Visual Studio 2012. Ho un problema legato all'ereditarietà delle classi. Mi spiego. Ho una classe, chiamiamola ClasseBase, ed una classe da questa ereditata, stesso nome ClasseBase, ma in un namespace differente. La classe base contiene nelle sue definizioni un oggetto riferito a sè stessa.
Namespace Spazio1
Public Class ClasseBase
Friend C1 as ClasseBase
Public Overridable Sub CostruisciC1
C1 = new ClasseBase
End Sub
End namespace
Ovviamente poi ho tutti i metodi che utilizzano l'oggetto C1. Fin qui, tutto a posto. Il problema si verifica quando vado ad istanziare la classe figlia. Ho provato inizialmente ad adombrare la definizione di C1 con una nuova, e ad implementare nuovamente il costruttore di C1 tramite overrides:
Namespace Spazio2
Public Class ClasseBase
Inherits Spazio1.ClasseBase
Friend Shadows C1 As ClasseBase
Public Overrides Sub CostruisciC1
C1 = new ClasseBase
End Sub
End Namespace
Ora sussiste il problema, perchè quando vado a ristanziare la classe figlia, i metodi ereditati continuano a fare riferimento all'oggetto C1 di quella padre, ovviamente non istanziato. Perchè? C'è un modo per uscire da questo giro? Grazie.
Ragazzi, allora, le cose sono due:
a) La mia domanda è banale, dunque dovrebbe essere altrettanto semplice rispondere
b) La mia domanda è complicata a tal punto che nessuno sa rispondere, e in tal caso devo cambiare strategia
In ambo i casi però vorrei da voi una risposta, perché questa cosa è fondamentale e mi sta tenendo bloccato. Grazie ancora!