Altra novità di VB 9.0 sono gli inizializzatori di oggetti(Object Initializer).
Gli inizializzatori permettono di dichiarare proprietà e campi pubblici nella fase dichiarativa dell’oggetto.
Ipotizziamo di crearci una classe Auto :
Public Class Auto
Private CasaCostruttrice As String
Private TipoAuto As String
' Marca delle casa automobilistica
Property Marca() As String
Get
Return CasaCostruttrice
End Get
Set(ByVal value As String)
CasaCostruttrice = value
End Set
End Property
' Modello dell'auto
Property Modello() As String
Get
Return TipoAuto
End Get
Set(ByVal value As String)
TipoAuto = value
End Set
End Property
End Class
Grazie agli inizializzatori possiamo valorizzarne le proprietà mentre dichiariamo la classe, esempio :
Dim veicolo As New Auto With {.Marca = "FIAT", _
.Modello = "Punto"}
Oppure utilizzando anche l’inferenza (che abbiamo visto nel precedente post), possiamo scrivere :
Dim Veicoli = New Auto() {New Auto With {.Marca = "FIAT", .Modello = "Punto"},_
New Auto With {.Marca = "OPEL", .Modello = "Corsa"}, _
New Auto With {.Marca = "AUDI", .Modello = "A4"}}
Non male è?