Creación de métodos para la clase
Para crear un método en una clase debemos escribir un procedimiento de tipo Sub o Function, en
función de si necesitamos devolver o no, un valor desde el método. Por este motivo, podemos deducir
que un método es lo mismo que un procedimiento, siendo las diferencias existentes entre ambos tan
sólo a nivel conceptual: mientras que a una rutina de código dentro de un módulo se le denomina
procedimiento, si la escribimos dentro de una clase se le denomina método.
Los métodos, tal y como explicamos en los primeros apartados teóricos sobre OOP, son aquellos
miembros de una clase que definen el comportamiento de los objetos, como consecuencia de las
acciones que llevan a cabo al ser ejecutados.
Veamos a continuación, un ejemplo concreto de creación
de método.
En la clase Empleado necesitamos realizar un cálculo del día en que va a finalizar un empleado sus
vacaciones; para ello precisamos conocer la fecha de comienzo y la cantidad de días que va a estar de
vacaciones, por lo que escribiremos un método en nuestra clase al que llamaremos
CalcularVacaciones( ); a este método le pasaremos los parámetros de la fecha de inicio y el número de
días, devolviendo, al ser de tipo Function, la fecha de finalización del periodo vacacional.
Module General
Sub Main()
' instanciar objeto Empleado
Dim loEmpleado As Empleado
loEmpleado = New Empleado()
' asignar valores a propiedades
loEmpleado.Identificador = 78
loEmpleado.Nombre = "Antonio"
loEmpleado.Apellidos = "Iglesias"
' llamar a método
loEmpleado.CalcularVacaciones("20/07/2002", 15)
End Sub
End Module
Public Class Empleado
' variables de propiedad
Private miID As Integer
Private msNombre As String
Private msApellidos As String
' procedimientos de propiedad
Public Property Identificador() As Integer
' ......
End Property
Public Property Nombre() As String
' ......
End Property
Public Property Apellidos() As String
' ......
End Property
' métodos
Public Sub CalcularVacaciones(ByVal ldtInicio As Date, _
ByVal liDias As Integer)
' en este método calculamos el periodo
' de vacaciones del empleado,
' mostrando los resultados en consola
Dim ldtFinal As Date
ldtFinal = DateAdd(DateInterval.Day, liDias, ldtInicio)
Console.WriteLine("Empleado {0} - {1} {2}", _
Identificador, Nombre, Apellidos)
Console.WriteLine("Vacaciones desde {0} hasta {1}", _
Format(ldtInicio, "dd/MMM/yy"), _
Format(ldtFinal, "d/MMMM/yyyy"))
Console.ReadLine()
End Sub
End Class
Código fuente 231
No hay comentarios:
Publicar un comentario