|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jun 2008
Messaggi: 7
|
[VB.NET] Proprietà
Salve, ho delle domande da rivolgere sulle proprietà. Ho capito che esse servono a rendere pubblici campi privati, ma non comprendo la sua sintassi:
Property [Nome della proprieta']([Eventuali parametri]) As [Tipo] Get Return End Get Set(ByVal Value As [Tipo]) End Set End Property cosa sono get e set e a cosa servono? hanno funzioni diverse? vi ringrazio in anticipo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
ti rispondo con un esempio:
Codice:
Private cognome As String
Private nome As String
Public Property GetCognome() As String
Get
return cognome
End Get
Set (ByVal Value As String)
cognome = value
End Set
End Property
'uguale anche per nome
Get = Prendi 'cognome' Set = assegna il valore preso con get a 'cognome' N.B.: Set potrebbe anche non assegnare nessun valore a cognome, in questo caso avremo un membro in sola lettura. Per un esempio pratico, supponiamo che tu abbia la tua classe Persona, ed un form con due caselle di testo: In un qualsiasi evento del form, puoi dire che: Codice:
Dim personaSingola As new Persona() personaSingola.GetCognome = casellaDiTesto1.Text personaSingola.GetNome = casellaDiTesto2.Text 'in pratica, abbiamo preso il valore dalle caselle di testo (get) e lo abbiamo 'assegnato ai membri della classe Persona (set) per cognome e nome *Quest'ultima frase non è proprio correttissima, sarebbe meglio parlare 'in termini di oggetto personaSingola (istanza della classe Persona)
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Oct 2003
Messaggi: 126
|
Le proprietà in linea di massima servono come interfaccia da e verso l'esterno di variabili private di una classe.
Tutto parte dal fatto che se hai una variabile privata naturalmente essa non è accessibile direttamente. Se non esistessero le proprietà faresti un metodo per valorizzare tale proprietà e uno per "restitiurla" Per Esempio: Codice:
Private _pippo As Integer
Public Function ValorizzaPippo(ByVal val As Integer) As Boolean
' eventuali controlli
_pippo = val
'se tutto va bene
Return True
End Function
Public Function RestituisciPippo() As Integer
' eventuali controlli
Return _pippo
End Function
Codice:
Public Property Pippo()
Get
Return _pippo
End Get
Set(ByVal value)
' eventuali controlli
_pippo = value
End Set
End Property
Get restituisce il valore di _pippo Set imposta il valore di _pippo |
|
|
|
|
|
#4 |
|
Junior Member
Iscritto dal: Jun 2008
Messaggi: 7
|
grazie ad entrambi per la risposta
sapete spiegarmi le proprietà di default? Ultima modifica di max12 : 08-07-2008 alle 23:55. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:51.


















