Declaración de Clases en VB.NET No. 2
3Declaración de Clases en VB.NET No. 2
Bueno, aunque tardía la segunda entrega , que esta demás decir que no es por yo quiera si no porque comprenderemos que el tiempo es uno de los factores más deseados.
Siguiendo con nuestro tema de las clases en esta segunda insertaremos una €œPropiedad€ a nuestra clase, a partir de esto podemos decir que podemos crear Propiedades de que se puedan escribir o sea de escritura y otras que no se pueden escribirse, además propiedades que contengan valores por defecto, las propiedades están compuestas por dos partes, la parte que recibe el valor:
Get Return Chr End Get
Y la parte que devuelve el valor:
Set(ByVal value As String) Chr = value End Set
Y esto para tenerlo más claro coloco un ejemplo acá abajo, de la opción Get, aquí lo que hacemos es solicitar información y esto lo declaramos en la primera parte que es el Get.
MiCadena = manejo.ItemStr(3)
La segunda parte de la historia es la propiedad Set donde podemos setear un valor en nuestra propiedad y esto lo hacemos de la siguiente manera.
manejo.ItemStr(3) = "Cadena"
Lo que hacemos en este trozo de código es setear un valor, bueno esperando ya estemos claro en este tema coloco el ejemplo.
Ejemplo:
Module Module1
Sub Main()
'**** Declaración de clase No.1
Dim manejo As New ManejoStr 'una forma de declarar
'*****Declaración de clase No. 2
Dim Manejo2 As ManejoStr ' segunda forma de declara
Manejo2 = New ManejoStr ' asignamos la clase
'**** usamos la declaración de clase No.1
manejo.Item(3) = "Cadena"
Console.WriteLine()
Console.WriteLine(manejo.AgregaStr("Pesando"))
Console.ReadLine()
End Sub
End Module
Class ManejoStr
Public Chr As String ' Esta es un campo público
Private Chr1 As String ' Esta es un campo privado
Default Property Item(ByVal ListadoStr As Integer) As String
Get
Return Chr
End Get
Set(ByVal value As String)
Chr = value
End Set
End Property
Public Function AgregaStr(ByVal Str As String) As String
AgregaChr()
AgregaStr = Str & "..."
End Function
Private Sub AgregaChr()
Console.WriteLine("Segregará puntos suspensivos")
End Sub
End Class
En este ejemplo ya mostramos una propiedad que es por defecto, las propiedades por defecto en VB.net deben tener unos requerimientos mínimos como por ejemplo, deben comenzar con €œDefault€ y deben tener como mínimo un parámetro en este ListadoStr y también se aconseja que deba de Tener como nombre €œItem€, y podremos utilizar nuestra propiedad por defecto de la siguiente manera:
manejo.Item(3) = "Cadena"
Pero como es nuestra propiedad por defecto entonces la podemos utilizar de esta manera
También:
manejo(3) = "Cadena"
Entonces aquí esta el primer ejemplo de propiedades.
Para hacer una propiedad que sea de lectura la hacemos de la siguiente manera:
Ejemplo:
Module Module1
Sub Main()
'**** Declaración de clase No.1
Dim manejo As New ManejoStr 'una forma de declarar
'*****Declaración de clase No. 2
Dim Manejo2 As ManejoStr ' segunda forma de declara
Manejo2 = New ManejoStr ' asignamos la clase
'**** usamos la declaración de clase No.1
manejo.Str2 = "Cadena"
Console.WriteLine()
Console.WriteLine(manejo.AgregaStr("Pesando"))
Console.ReadLine()
End Sub
End Module
Class ManejoStr
Public Chr As String ' Esta es un campo público
Private Chr1 As String ' Esta es un campo privado
Private Str2Val As String
Public Property Str2() As String
Get
Return Str2Val
End Get
Set(ByVal value As String)
Str2Val = value
End Set
End Property
Public Function AgregaStr(ByVal Str As String) As String
AgregaChr()
AgregaStr = Str & "..."
End Function
Private Sub AgregaChr()
Console.WriteLine("Segregará puntos suspensivos")
End Sub
End Class
A este tipo de Propiedades ahora con el nombre de Str2 también podemos hacer que no podamos setearle algún valor haciendo lo siguiente:
Private Set(ByVal value As String)
Y de esta manera ya no podremos setear ningún valor en nuestra propiedad puesto que hemos declado el Set de manera privada y únicamente puede setearse algún valor dentro de la la misma clase, en esta clase vemos que tenemos un campo privado de nombre Str2Val el cual contendrá el valor resultante de nuestra clase que puede ser utilizado también en este caso dentro de la misma clase, y la última opción para las propiedades es la propiedad de lectura que se comprende de la siguiente manera:
Public ReadOnly Property Str3() As String Get Return "Otra Cadena" End Get End Property
Entonces esta Propiedad la podemos usar únicamente con el método Get como explique al inicio del esta segunda parte, un dato adicional que les puedo dar es que así como tenemos la Opción el modificador Set así también tenemos los siguientes:
Friend:
Al igual que el Set permite, que la nuesta opción sea modificada pero con la variante que puede se accesada desde cualquier parte del proeyecto sin importar la clase o bien el módulo.
Protectec:
Este modificador permite que podamos setear valores desde la misma clase o cualquier clase deribada de donde se ha definido la variable ejemplo : Protected Str as String.
Estos modificadores pueden ser aplicados a nuestras Propiedades y/ó a nuestras variables.