Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Creación de clases en VB.Net y C#


Explicación de la creación de clases y objetos en los dos principales lenguajes de la plataforma .Net.


10/12/03 - Para explicar la creación de clases usaremos un ejemplo sencillo basado en una clase principal "bicicleta".

Para crear una clase debemos definir sus propiedades y sus métodos, en este ejemplo se usan los siguientes términos como propiedades de la clase bicicleta: Modelo, Precio, NumeroDeVelocidades y Velocidad; como métodos de la clase se usan: Acelerar(km) , Frenar() y ConsultarVelocidad().


VB.NET
Public Class Bicicleta
    Public Modelo as String
    Public Precio as Double
    Public NumeroDeVelocidades as Integer
    Private Velocidad as Integer

    Public Sub Acelerar(ByVal km As Integer)
       Velocidad = Velocidad + km
    End Sub

    Public Sub Frenar()
       If Velocidad > 0 Then
          Velocidad = Velocidad -1
       End If
    End Sub

    Public Function ConsutarVelocidad() As Integer
       Return Velocidad
    End Function
End Class

C#
Class Bicicleta
{
    public string Modelo;
    public double Precio;
    public int NumeroDeVelocidades
    private int Velocidad

    public void Acelerar(int km)
    {
       Velocidad = Velocidad + km;
    }

    public void Frenar()
    {
       if (Velocidad > 0)
       {
          Velocidad = Velocidad - 1;
       }
    }

    public int ConsultarVelocidad()
    {
       return Velocidad;
    }
}


Nuestra clase bicicleta consta de varias propiedades y métodos, las palabras Private y Public definen la accesibilidad de las propiedades, funciones o subrutinas. La definición de una propiedad o método de tipo privado indica que sólo podrá ser usada dentro del código de la misma clase, si creásemos un objeto de tipo bicicleta, las especificaciones de la clase no nos permitirían acceder a la propiedad velocidad para consultarla o modificarla, ya que esta definida como privada. En cambio se pueden usar las subrutinas Acelerar() y Frenar() ya que son de tipo Public, y desde dentro de ellas se interactua con las propiedades privadas, con esto conseguimos encapsular el código y hacer accesible solo aquello que queramos.

Una vez está construida la clase ya se pueden instanciar objetos de la misma.


VB.NET
Dim objBicicleta as Bicicleta = New Bicicleta

Dim VelocidadActual as Integer

objBicileta.Modelo = "Montaña"
objBicicleta.Precio = 200
objBicicleta.NumeroDeVelocidades = 21

objBicicleta.Acelerar(5)
objBicicleta.Frenar()

VelocidadActual = objBicicleta.ConsultarVelocidad

C#
Bicicleta objBicicleta = new Bicicleta();

int VelocidadActual;

objBicicleta.Modelo = "Montaña";
objBicicleta.Precio = 200;
objBicicleta.NumeroDeVelocidades = 21;

objBicicleta.Acelerar(5);
objBicicleta.Frenar();

VelocidadActual = objBicicleta.ConsultarVelocidad();


Tras la creación del objeto objBicicleta a partir de la clase, se pueden modificar los valores de las propiedades de tipo Public, y llamar a los métodos de tipo Public.

En el ejemplo se llama a los métodos Acelerar(5), pasándole el numero de km que queremos acelerar a través del parámetro "km" que está definido en la subrutina.

Luego se llama al método Frenar() que decrementa en una unidad el valor de la propiedad Velocidad.

Por último se usa la función ConsultarVelocidad(), que retorna el valor de la propiedad Velocidad para introducirlo en la variable VelocidadActual.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada
+ 6 comentarios (Añadir)
+ 7 comentarios no revisados

 Autoría, licencia y acciones sobre este artículo

Informe de Francisco Recio y David Provencio*

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Manual sobre la plataforma .Net

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en .NET


 Comentarios de los visitantes
Los comentarios de los visitantes son para ampliar la información del artículo. Cualquiera puede participar.
Se muestran 6 comentarios revisados

 Comentario de Marcos
04/1/04 
Existe un error en el código, si lo que se pretente es acelerar una cantidad de Km determinados.
El método Acelerar incrementa en 1 la velocidad, no en Km Kilómetros, como indica la explicación.
El método Acelerar quedaría, para incrementar la aceleración en la cantidad pasada como parámetro:

Public Sub Acelerar(ByVal km As Integer)
    Velocidad = Velocidad + km
End Sub

CORREGIDO! Muchas gracias por tu ayuda.


 Comentario de Arcadio
07/4/04 
Faltaría dar un valor inicial a velocidad para poder llamar a los métodos y que devuelvan un resultado consistente

 Comentario de Moisés
05/11/04 
Por la construcción de C# (no soy especialista en VB) de la clase Bicicleta, es necesario añadir un método que permita escribir un valor para el atributo Velocidad tomando en cuenta que es privado o también considerar una inicialización del mismo a través de un constructor de la clase, pero de la forma en que se propone Velocidad no tiene valor inicial deseado y el usuario no lo puede inicializar desde el programa por la encapsulación concebida

 Comentario de Airis
26/9/05 
Una de las cosas que no entiendo es cómo se puede dar una explicacion tan infantil de las clases. Vale que en C++ sean asi pero en VB.NEt ni se parecen. A ver, en VB.NET hay un amnipulador de eentos y las clases tienen que soportar estos eventos... Donde esta la explicacion de esto??

 Comentario de isaac arevalo
23/3/06 
hola a todos no soy experto en C# pero en el ejemplo de la clase es evidente que falta una variable ke inicialize el valor ke tendra la velocidad en este caso sera 0

 Comentario de Juan Felipe
24/11/06 
Bueno, como aporte a este ejemplo quiero decir que más que encontrarle errores al codigo en cuanto a la logica se refiere, lo que el ejemplo quiere mostrar es la forma de utilizar clases en .Net, sin importar la clase de codigo que utilicemos, me parece un sencillo pero util ejemplo de como implementar clases en .Net

Añadir un comentario al artículo Añadir un comentario del artículo
 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 7 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
Añadir un comentario al artículo Añadir un comentario del artículo



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Manual sobre la plataforma .Net
Categorías
+.NET

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia