creacion de clases al vuelo….en Visual basic 2008

Muy bien amigos…este es un nuevo post del cual hablare sobre .NET…por cierto hace uff que no he posteado algo …xD pero bueno siempre regresamos..a lo k ibamos..hoy hablare en modo puntual sobre las clases en visual basic 2008

Creacion de clases:

Una clase es una representación abstracta de algo particular de un objeto por ejemplo..tenemos a la clase Persona lo cual representaria lo abstracto y un objeto vendria a ser las creaciones que se dan deacuerdo a la clase o tmb llamada plantilla, por ejemplo.. los objetos: “Luis,Carlos,Julio, Tania,etc”

En resumen…una clase es una plantilla de la cual se crean objetos.

En VB.NET las clases se crean con la palabra clave Class

Public Class Person

End Class

Campos:

Los campos son las variables declaradas en la clase que estaran disponibles para cada uno de los objetos individuales, cuando se ejecute en la aplicacion.

Crearemos los siguientes campos en la clase:

Public Class Person

Private nombre As String ‘campos

Private fechaCumple As Date ‘campos

End Class

Se puede controlar el ambito de las variables o tambien llamado alcance de los campos usando las siguientes palabras claves:

  • private.-disponible unicamente para el codigo de la clase
  • friend.-disponible unicamente para el codigo del proyecto o componente
  • protected.-disponible solo para las clases que heredan de la clase
  • protected friend.-disponible para codificar dentro de su proyecto/componente y en las clases que heredan de otra clase, esten o no el el proyecto.
  • public.-disponible para codificar fuera de la clase y para cualquier proyecto que referencie al ensamblado

Metodos:

Son aquellos que nos proporcionan servicios(o funciones) que se pueden invocar para poder trabajar con el objeto creado. Utilizando sus propios datos o datos pasados como parametros al metodo, se manipula informacion para conseguir resultado o para llevar a cabo una funcion.

En visual basic, los metodos se implementan utilizando rutinas Sub o Function dentro del modulo de clase que define el objeto.  Las rutinas Sub aceptan parametros, pero no devuelven ningun valor como resultado cuando terminan su ejecucion. Las rutinas Function pueden aceptar parametros y siempre generan un valor como resultado, que se puede usar por el codigo llamante.

Para declarar un metodo Sub:

Public Sub walk()
‘aqui va la implementacion del codigo….
End Sub

Para que se pueda usar este metodo tendriamos que crear un objeto de la siguiente manera:

Dim objeto As New Person()
objeto.walk()

Metodos que devuelven valores:

En este tipo de casos se suele usar la palabra clave Function .En este caso crearemos un metodo que devuelve la edad de una persona y tambien para poder implementarlo es necesario indicar el tipo de valor devuelto(en este caso de tipo Integer) cuando se declara dicha funcion. La palabra return devolvemos cualquier valor del tipo de datos adecuado.

Public Function Edad() As Integer
Return CInt(DateDiff(DateInterval.Year, fechaCumple, Now))
End Function

Y para poder usarlo…

Dim objeto As New Person()
Dim objetoEdad As Integer
objetoEdad = objeto.Edad

Parametros del metodo:

Asi mismo a un metodo tambien es posible enviarle informacion en el momento de la llamada. Esto se puede dar mediante parametros.

En este casi podemos crear una clase Person que implementa un metodo Walk  que indique la distancia que la persona anda en el tiempo. Entonces tenemos que ponerle como parametro al metodo una variable que indique la distancia que recorre cada vez que se le llama al metodo.

Public Class Person
Private nombre As String ‘campos
Private fechaCumple As Date ‘campos
Private distanciaTotal As Integer

Public Sub walk(ByVal distancia As Integer)
distanciaTotal += distancia
End Sub
Public Function Edad() As Integer
Return CInt(DateDiff(DateInterval.Year, fechaCumple, Now))
End Function
End Class

Asi cuando querramos usar el metodo le indicamos el parametro siendo del mismo tipo de dato indicado en el metodo de la clase.

Dim distancia As Integer
distancia = 12
Dim objeto As New Person()
objeto.walk(distancia)

Nota: La palabra clave ByVal me indica que el valor del parametro es una copia del valor original. Significa que este valor siempre se mantendra en todo la implementacion del metodo.

Propiedades:

Una propiedad es un metodo que esta especificamente diseñado para establecer y obtener los valores de los datos. Para poder usarlo podriamos usar la palabra clave Property que consolida el establecimiento y recuperacion de un valor del campo de la clase.

Se declara asi…:

Public Class Person

Private nombre As String ‘campos

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

End Class

Con la palabra clave Set asignamos el valor del campo y con la palabra clave obtenemos el valor.

Ahora podemos usar este metodo de la siguiente manera:

Dim objeto As New Person()
objeto.Pnombre = “Joel”
MsgBox(objeto.Pnombre)

Asi por ejemplo en la linea    objeto.Pnombre = “Joel” lo que hacemos es asignar el valor, en este modo pues usamos Set y con MsgBox(objeto.Pnombre) enviamos un mensaje pues en este caso usamos Get.

Propiedades parametrizadas:

Este tipo de propiedades reflejan un rango o una matriz de valores. Por ejemplo podemos implementar una propiedad NumeroTelefono como una propiedad parametrizada pues una persona puede tener varios numeros telefonicos y asi mismo una descripcion de cada uno de ellos.

Public Class Person
Private nombre As String ‘campos
Private fechaCumple As Date ‘campos
Private distanciaTotal As Integer
Private telefonos As New Hashtable

Public Property Phonos(ByVal localizacion As String) As String

Get
Return CStr(telefonos.Item(localizacion))
End Get
Set(ByVal value As String)

If  telefonos.ContainsKey(localizacion) Then
telefonos.Item(localizacion) = value
Else
telefonos.Add(localizacion, value)
End If
End Set

End Property
End Class

En el bloque Set usamos localizacion para actualizar o añadir el elemento adecuado en la HashTable. En este caso se esta usando el metodo ContainsKey de la HashTable, para determinar si el numero de telefono ya existe en la lista. Si existe, simplemente actualizamos el valor de la lista. Si no, se tiene que añadir un nuevo elemento a la lista para ese valor.

You can leave a response, or trackback from your own site.

One Response to “creacion de clases al vuelo….en Visual basic 2008”

  1. warfare 1944 says:

    Innovations are always welcome, I believe that this information deserve to be discussed more thoroughly.

Leave a Reply

Powered by WordPress | Compare Cell Phone Plans at iCellPhonePlans.com | Thanks to Cheap Palm Pixi, Bromoney and Wordpress Themes