Condividi tramite


Procedura: definire una classe che utilizza membri di una classe esistente

Aggiornamento: novembre 2007

È possibile utilizzare i membri di una classe esistente in un'altra classe che deriva dalla classe esistente.

Nell'esempio riportato di seguito si supponga di voler definire un tipo speciale di classe Button che si comporti come una normale classe Button ma che esponga anche un metodo che consente di invertire i colori di sfondo e di primo piano.

Per definire una classe che utilizza i membri di una classe già esistente

  1. Utilizzare un'Istruzione Class (Visual Basic) per definire una classe dalla quale creare l'oggetto richiesto.

    Public Class reversibleButton

    Assicurarsi che l'ultima riga di codice nella classe sia seguita da un'istruzione End Class. Per impostazione predefinita, quando si immette un'istruzione Class l'ambiente di sviluppo integrato (IDE) genera automaticamente un'istruzione End Class.

  2. Aggiungere un'Istruzione Inherits subito dopo l'istruzione Class. Specificare la classe dalla quale deriva la nuova classe.

    Inherits System.Windows.Forms.Button

    La nuova classe eredita tutti i membri definiti dalla classe base.

  3. Aggiungere il codice per i membri aggiuntivi esposti dalla classe derivata. Ad esempio, è possibile aggiungere un metodo reverseColors. La classe derivata potrebbe essere simile alla seguente:

    Public Class reversibleButton
        Inherits System.Windows.Forms.Button
        Public Sub reverseColors() 
            Dim saveColor As System.Drawing.Color = Me.BackColor
            Me.BackColor = Me.ForeColor
            Me.ForeColor = saveColor
        End Sub
    End Class 
    

    Se si crea un oggetto dalla classe reversibleButton, tale oggetto potrà accedere a tutti i membri della classe Button, nonché al metodo reverseColors e a qualsiasi altro nuovo membro definito in reversibleButton.

Compilazione del codice

Assicurarsi che il compilatore possa accedere alla classe dalla quale si desidera derivare la nuova classe. A tale scopo è possibile fornire il nome completo della classe, come nell'esempio precedente, oppure specificare il relativo spazio dei nomi in un'Istruzione Imports (tipo e spazio dei nomi .NET). Se la classe si trova in un progetto differente, può essere necessario aggiungere un riferimento a tale progetto. Per ulteriori informazioni, vedere Riferimenti a spazi dei nomi e componenti.

Vedere anche

Attività

Procedura: creare un oggetto

Procedura: riutilizzare un componente funzionante

Procedura: accedere a membri condivisi e non condivisi di un oggetto

Procedura: creare classi derivate

Concetti

Oggetti e classi

Nozioni fondamentali sull'ereditarietà