Properties en Visual Basic .NET

Hola a todos, hoy os explicaré como funcionan y como crear los properties en Visual Basic .NET.

Las propiedades en Visual Basic .NET es el equivalente a los get y set en Java.

Estos nos permiten devolver el valor o establecer el valor de un atributo en concreto. También podemos indicar que solo sea de lectura.

Este es el formato de Property:

[vbnet] Public Property nombreProp() As
Get
Return
End Get
Set(value As )
= value
End Set
End Property[/vbnet]

Veamos un ejemplo con una clase Persona:

[vbnet]Public Class Persona

Private nombre As String
Private edad As Integer

Public Sub New(nombre As String, edad As Integer)
Me.nombre = nombre
Me.edad = edad
End Sub

Public Property PropNombre() As String
Get
Return nombre
End Get
Set(value As String)
nombre = value
End Set
End Property

Public Property PropEdad() As Integer
Get
Return edad
End Get
Set(value As Integer)
edad = value
End Set
End Property

End Class[/vbnet]

Ahora vamos a usar las properties para mostrar el valor de un atributo y dar un valor a otro:

[vbnet]Module Module1

Sub Main()

Dim p As New Persona(«Fernando», 26)

Console.WriteLine(«Original»)
Console.WriteLine(«Nombre: » & p.PropNombre)
Console.WriteLine(«Edad: » & p.PropEdad)

p.PropNombre = «Pepe»
p.PropEdad = 13

Console.WriteLine(«Cambio»)
Console.WriteLine(«Nombre: » & p.PropNombre)
Console.WriteLine(«Edad: » & p.PropEdad)

Console.ReadLine()

End Sub

End Module[/vbnet]

Como veis, vale tanto para mostrar como para modificar.

Una cosa que podemos hacer, es que solo sea de lectura, es decir, que no se pueda modificar. Veamos como:

[vbnet]Public Class Persona

Private nombre As String
Private edad As Integer

Public Sub New(nombre As String, edad As Integer)
Me.nombre = nombre
Me.edad = edad
End Sub

Public ReadOnly Property PropNombre() As String
Get
Return nombre
End Get
End Property

Public ReadOnly Property PropEdad() As Integer
Get
Return edad
End Get
End Property

End Class[/vbnet]

Solo tenemos que añadir ReadOnly y quitar la parte de Set. Si intentamos lo de antes, nos dará error y no compilara.

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539