Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Module Module1
- ' supponiamo di voler gestire una frazione aritmetica
- ' cosa si intende per frazione?
- ' una frazione è un quoziente tra un numeratore e un denominatore
- '
- ' +-------------------+
- ' | Frazione |
- ' +-------------------+
- ' | numeratore int|
- ' | denominatore int|
- ' +-------------------+
- '
- Class Frazione
- ' variabili di stato / implementazione dell'AGGREGAZIONE
- ' Private _numeratore As Integer ' <--- omessa perché il COMPILATORE LA CREA AL NOSTRO POSTO
- ' per la presenza della Property che si chiama Numeratore
- Private _denominatore As Integer
- ' Metodi di accesso o Accessors
- 'Public Sub SetDenominatore(value As Integer) ' Setter
- ' If value <> 0 Then
- ' _denominatore = value
- ' Else
- ' ' c'è un problema!
- ' Console.WriteLine("Attenzione, valore non ammesso, denominatore impostato a 1")
- ' _denominatore = 1
- ' End If
- 'End Sub
- 'Public Function GetDenominatore() As Integer ' Getter
- ' Return _denominatore
- 'End Function
- Property Denominatore As Integer ' property o proprietà
- Get 'getter
- Return _denominatore
- End Get
- Set(value As Integer) 'setter
- Console.WriteLine("Entro nel setter di Denominatore e cerco di impostare _denominatore = {0}", value)
- If value <> 0 Then ' in questo caso il valore è diverso da zero
- _denominatore = value ' quindi lo posso assegnare tranquillamente
- Console.WriteLine("Ok, il valore è consentito per il denominatore")
- Else ' lo zero non è un valore valido per il denominatore
- ' c'è un problema!
- Console.WriteLine("Attenzione, {0} è un valore non ammesso, denominatore impostato a 1", value)
- ' io, progettista e padrone assoluto del mondo delle frazioni, decido, arbitrariamente, di impostare
- ' il denominatore = 1 se l'utente ha la volontà di impostare 0!
- _denominatore = 1
- End If
- End Set
- End Property
- 'Property Numeratore As Integer
- ' Get
- ' Return _numeratore
- ' End Get
- ' Set(value As Integer)
- ' _numeratore = value
- ' End Set
- 'End Property
- Property Numeratore As Integer
- End Class
- Sub Main()
- Dim f1 As Frazione
- f1 = New Frazione
- f1.Numeratore = 2
- f1.Denominatore = 3
- Console.WriteLine("La frazione è: {0}/{1}", f1.Numeratore, f1.Denominatore)
- Dim f2 As Frazione = New Frazione
- f2.Numeratore = 4
- f2.Denominatore = 0
- Console.WriteLine("La frazione è: {0}/{1}", f2.Numeratore, f2.Denominatore)
- Dim f3 As New Frazione
- End Sub
- End Module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement