Ricerca…


introduzione

Una classe raggruppa diverse funzioni, metodi, variabili e proprietà, che sono chiamati membri. Una classe incapsula i membri, a cui è possibile accedere da un'istanza della classe, chiamata oggetto. Le classi sono estremamente utili per il programmatore, poiché rendono l'attività comoda e veloce, con caratteristiche quali modularità, riutilizzabilità, manutenibilità e leggibilità del codice.

Le classi sono gli elementi costitutivi dei linguaggi di programmazione orientati agli oggetti.

Creare classi

Le classi forniscono un modo per creare i propri tipi all'interno del framework .NET. All'interno di una definizione di classe è possibile includere quanto segue:

  • campi
  • Proprietà
  • metodi
  • Costruttori
  • eventi

Per dichiarare una classe si usa la seguente sintassi:

Public Class Vehicle     
End Class

Altri tipi .NET possono essere incapsulati all'interno della classe ed esposti di conseguenza, come mostrato di seguito:

Public Class Vehicle
     Private Property _numberOfWheels As Integer
     Private Property _engineSize As Integer

     Public Sub New(engineSize As Integer, wheels As Integer)
         _numberOfWheels = wheels
         _engineSize = engineSize
     End Sub

     Public Function DisplayWheelCount() As Integer
         Return _numberOfWheels
     End Function
End Class

Classi astratte

Se le classi condividono funzionalità comuni, puoi raggrupparle in una classe base o astratta. Le classi astratte possono contenere l'implementazione parziale o nessuna e consentire al tipo derivato di sovrascrivere l'implementazione di base.

Le classi astratte all'interno di VisualBasic.NET devono essere dichiarate come MustInherit e non possono essere istanziate.

Public MustInherit Class Vehicle
     Private Property _numberOfWheels As Integer
     Private Property _engineSize As Integer

     Public Sub New(engineSize As Integer, wheels As Integer)
         _numberOfWheels = wheels
         _engineSize = engineSize
     End Sub

     Public Function DisplayWheelCount() As Integer
         Return _numberOfWheels
     End Function
End Class

Un sottotipo può quindi inherit questa classe astratta come mostrato di seguito:

Public Class Car
    Inherits Vehicle
End Class

L'auto erediterà tutti i tipi dichiarati all'interno del veicolo, ma potrà accedervi solo in base al modificatore di accesso sottostante.

Dim car As New Car()
car.DisplayWheelCount()

Nell'esempio precedente viene creata una nuova istanza di Car. Viene quindi richiamato il metodo DisplayWheelCount() che chiamerà l'implementazione Vehicles classe base.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow