Manuale VB.Net

Follow on Facebook  Share on Twitter  Share on Google  Share on Linkedin  Share on Blogger  Share on Flipboard  Share on Tumblr 

In questo capitolo si presuppone che il lettore abbia delle conoscenza di programmazione ad oggetti, per cui eventualmente rimando il lettore meno esperto al manuale di ingegneria del software in cui parlo di programmazione ad oggetti.

Quando si definisce una classe, si definisce una struttura per un tipo di dati.
Questo in realtà non definisce alcun dato ma, come sarà composto un oggetto di una classe e quali operazioni potranno essere effettuate su di esso.

Gli oggetti sono istanze di una classe. I metodi e le variabili che costituiscono una classe sono detti membri della classe.

Definizione di una classe

Una definizione di classe inizia con la parola chiave Class seguita dal nome della classe; quindi c'è corpo della classe, infine l'istruzione End Class

Sintassi

[ <attributelist> ] [ accessmodifier ] [ Shadows ] [ MustInherit | NotInheritable ] [ Partial ]
Class name [ ( Of typelist ) ]
    [ Inherits classname ]
    [ Implements interfacenames ]
    [ statements ]
End Class

Dove:

  • AttributeList: è una lista di attributi che "decorano" la classe
  • Accessmodifier: determina il livello di accesso alla classe.
  • Shadows: indica una variabile ne nasconde una con lo stesso nome nella classe base
  • MustInherit: specifica che una classe può essere utilizzata solo come classe base e che non è possibile crearne istanze (classe astratta).
  • NotInheritable: specifica che la classe non può essere utilizzata come classe base, e non è quindi possibile creare classi che ereditano da essa.
  • Partial: indica una definizione parziale della classe.
  • Inherits: specifica la classe base da cui la classe in oggetto sta ereditando.
  • Implements: specifica le interfacce che la classe sta implementando.
  • Statements: una serie di istruzioni VB.Net che definiscono il corpo della classe.

Esempio

Module esempioClassi
                            
   Class Rettangolo
      Public lunghezza As Double
      Public altezza As Double
   End Class
   
   Sub Main()
      Dim rect As Rettangolo = New Rettangolo()
      rect.lunghezza = 2.0
      rect.altezza = 3.0
      Console.WriteLine("Area del rettangolo : {0}", rect.lunghezza * rect.altezza )
   End Sub
   
End Module

Abbiamo definito una classe rettangolo contenente le proprietà altezza e larghezza.
Successivamente questa è stata istanziata, sono state impostate le due proprietà e quindi utilizzate

Funzioni Membro ed Incapsulamento

Una funzione membro di una classe è una funzione che ha la sua definizione o il suo prototipo all'interno della definizione di classe come qualsiasi altra variabile. Funziona su qualsiasi oggetto della classe di cui è membro e ha accesso a tutti i membri di una classe per quell'oggetto.

Le variabili membro sono attributi di un oggetto. Queste variabili sono accessibili solo utilizzando le funzioni membro pubbliche.

Utilizziamo i due concetti espressi sopra per modificare la classe rettangolo.

Esempio

Module esempioClassi

   Class Rettangolo

      Private lunghezza As Double
      Private altezza As Double

      Public Sub impostaLunghezza(ByVal lung As Double)
          lunghezza = lung
      End Sub
      Public Sub impostaAltezza(ByVal alte As Double)
          altezza = alte
      End Sub

      Public Function calcolaArea() As Double
          Return lunghezza * altezza 
      End Function
   End Class

   Sub Main()
      Dim rect As Rettangolo = New Rettangolo()
      rect.impostaLunghezza(2.0)
      rect.impostaAltezza(3.0)
      Console.WriteLine("Area del rettangolo : {0}", rect.calcolaArea() )
   End Sub

End Module

costruttori e distruttori

Una costruttore è una speciale Sub membro di una classe che viene eseguito ogni volta che viene creato un oggetto della classe.
Il costruttore si dichiara con la parola chiave "New" e non ha ripi di ritorno.

Un costruttore di default non ha alcun parametro, ma si possono creare overload con parametri. In questo modo è possibile inizializzare un oggetto al momento della sua creazione.

Un distruttore è una speciale Sub che viene eseguito ogni volta che un oggetto della classe esce dallo scope.
Il distruttore si dichiara con la parola chiave "Finalize"

Mettiamo in pratica quanto appreso modificando la classe creata precedentemente

Esempio

Module esempioClassi

   Class Rettangolo

      Private lunghezza As Double
      Private altezza As Double

      Public Sub New(ByVal lung As Double, ByVal alte As Double) 
          Console.WriteLine("Creo l'oggetto")
          lunghezza = lung
          altezza = alte
      End Sub 

      Public Sub impostaLunghezza(ByVal lung As Double)
          lunghezza = lung
      End Sub
      Public Sub impostaAltezza(ByVal alte As Double)
          altezza = alte
      End Sub

      Public Function calcolaArea() As Double
          Return lunghezza * altezza 
      End Function

      Protected Overrides Sub Finalize()
          Console.WriteLine("Distruggo l'oggetto")
      End Sub

   End Class

   Sub Main()
      Dim rect As Rettangolo = New Rettangolo(2.0, 3.0)
      Console.WriteLine("Area del rettangolo : {0}", rect.calcolaArea() )
   End Sub

End Module

Manuale VB.Net

 

A colpo d'occhio

  • Script C#

    Script C# per tutte le esigenze: database, sessioni, file, contatori, stringhe, date, e-mail, e tanto altro

  • Manuale C#

    Manuale completo di C# per principianti e non

  • Script VB.Net

    Script VB.Net Visual Basic .net: database, sessioni, file, contatori, stringhe, date, e-mail, e tanto altro

  • Manuale SQL

    Manuale di SQL con particolare attenzione a T-SQL di Microsoft SQL Server

  • Seo

    Tecniche di posizionamento indicizzazione e ottimizzazione dei siti web per nei motori di ricerca

  • Manuale CSS

    Manuale completo sui CSS per principianti e non

Be Responsive

HTML 5

HTML 5

HTML 5 è un linguaggio di markup utilizzato per la strutturazione e il contenuto delle pagine Web.

CSS 3

CSS 3

CSS 3 è l'ultima evoluzione dei fogli di stile CSS. Contiene molte novità come angoli arrotondati, ombre, sfumature, transizioni o animazioni.

jQuery

jQuery

jQuery è una libreria JavaScript cross-platform progettata per semplificare lo scripting lato client.