DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

Introducción a las clases en C#

0

 

Clases

En C# un programa se crea mediante la definición de nuevos tipos. De hecho, en C# todos los tipos son clases. Cada nuevo tipo estará formado por un conjunto de datos y funciones. Veamos un ejemplo:

// clase.cs

 

using System;

 

// declaración de la clase

class Persona

{

  // una variable que contendrá el nombre

  string nombre;

 

  // constructor: como inicializar un objeto de clase Persona

  public Persona(string nombre)

  {

    this.nombre = nombre; // this: una forma de acceder a este objeto

  }

 

  // propiedad: una forma de acceder al nombre de una persona

  public string Nombre

  {

    get { return nombre; }

    set { nombre = value; } // variable especial value

  }

 

  public static void Main()

  {

    Persona p = new Persona("Adán");

    Console.WriteLine("p.Nombre = {0}", p.Nombre);

    p.Nombre = "Eva";

    Console.WriteLine("p.Nombre = {0}", p.Nombre);

  }

}

La palabra clave this

Esta palabra clave, this, nos permite referirnos a cualquier variable o método de la instancia de una clase en la que nos encontremos. También nos permite llamar a un construtor sobrecargado, y declarar o acceder a un indexador. Un uso muy común de la misma es distinguir entre un campo de una instancia de un objeto y un parámetro.

 

public Persona(string nombre)

{

  this.nombre = nombre;

}

Campos

Los campos de una clase son los datos que esta contiene. En su forma más sencilla pueden ser una simple declaración de variable como:

string nombre;

que cada instancia de una clase contendrá.

Podemos utilizar los modificadores static y readonly para alterar el comportamiento de un campo.

A los campos no estáticos (por defecto) se les denomina variables de instancia y los campos estáticos variables de clase. Mediante el uso explícito de la palabra static hacemos que de una variable pase a haber una única copia compartida por todas las instancias de una clase.

// static.cs

 

using System;

 

class Persona

{

  static int contador;

  int id;

 

  public Persona() { id = contador++; }

  ~Persona() { contador--; }

 

  public int Contador

  {

    get { return contador; }

  }

 

  public int Id

  {

    get { return id; }

  }

 

  static void Main()

  {

    Persona p1 = new Persona();

    Persona p2 = new Persona();

    Console.WriteLine("Hay {0} personas", p1.Contador);

    Console.WriteLine("p2.Id() = {0}", p2.Id);

  }

}

El modificador readonly nos permite evitar que una variable sea modificada una vez que sea asignada. Al igual que una constante posee un valor invariable, pero este se calcula en tiempo de ejecución en vez de en tiempo de compilación. Las constantes tienen la ventaja de permitir realizar un mayor número de optimizaciones sobre ellas. En cambio las variables readonly, nos aportan un mayor grado de flexibilidad, pues pueden retrasar el calcular su valor hasta la ejecución del programa. Esto puede aportar ventajas a la hora de modificar su valor sin tener que recompilar el código para que el nuevo valor surta efecto, como a la hora de corregir un valor erróneo o simplemente actualizarlo.

DEMOSTRACIÓN

En Visual Studio vamos a dar click en menú File à New à Project



En la Ventana emergente le damos click a Window, seleccionamos la opción “Console Application” y espacio Name colocamos el nombre del proyecto que para el Ejemplo es “Demo 4 20483” y luego presionamos el botón OK



En nuestro proyecto, arriba del método Main, empezaremos a escribir una clase llamada ‘Coche’ con sus atributos y constructor como se muestra a continuación:

 

Seguimos en la clase ‘Coche’ tipiando sus métodos correspondientes:

En el método Main() codificaremos las acciones que le darán funcionalidad a nuestra clase:


Ejecutamos


Y el resultado es el siguiente:







Tal vez te interesen estas entradas

No hay comentarios