Como Instanciar una Clase: Crear un objeto en la memoria
Una vez que tenemos una clase definida, lo único de lo que disponemos es de una especie de plantilla o molde a partir del cual podemos crear objetos en memoria.
Para crear esos objetos en Visual C# .NET lo podemos hacer de dos formas, pero como veremos siempre será mediante la instrucción new que es la encargada de crear el objeto en la memoria y asignar la dirección del mismo a la variable usada en la parte izquierda de la asignación.
Declarar primero la variable y después instanciarla
Lo primero que tenemos que hacer es declarar una variable del tipo que queremos instanciar, esto lo hacemos de la misma forma que con cualquier otro tipo de datos:
Celular objCelular;
Con esta línea de código lo que estamos indicando a C# es que tenemos intención de usar una variable llamada objCelular para acceder a una clase de tipo Celular. Esa variable, cuando llegue el momento de usarla, sabrá todo lo que hay que saber sobre una clase Celular, pero hasta que no tenga una "referencia" a un objeto de ese tipo no podremos usarla.
La asignación de una referencia a un objeto Celular la haremos usando la instrucción new seguida del nombre de la clase:
objCelular = new Celular();
A partir de este momento, la variable objCelular tiene acceso a un nuevo objeto del tipo Celular, por tanto podremos usarla para asignarle valores y usar cualquiera de los miembros que ese tipo de datos contenga:
objCelular.MarcaCelular = "MAXCEL";
objCelular.TomarLLamada("9999999999");
Declarar e instanciar en un solo paso
La otra forma de instanciar una clase es haciéndolo al mismo tiempo que la declaramos. En C# esto se hace como si uniéramos la declaración y la instanciación en una sola instrucción:Celular objCelular = new Celular();
De esta forma se asignará a la variable objCelular una referencia a un nuevo objeto creado en la memoria, el cual será totalmente independiente del resto de objetos creados con esa misma clase.
El constructor: El punto de inicio de una clase
Cada vez que creamos un nuevo objeto en memoria estamos llamando al constructor de la clase. En Visual C# .NET el constructor es una especie de método que se llama de la misma forma que la clase.
En el constructor de una clase podemos incluir el código que creamos conveniente, pero realmente solamente deberíamos incluir el que realice algún tipo de inicialización, en caso de que no necesitemos realizar ningún tipo de inicialización, no es necesario definir el constructor, ya que el propio compilador lo hará por nosotros. Esto es así porque todas las clases deben implementar un constructor, por tanto si nosotros no lo definimos, lo hará el compilador de C#.
Si nuestra clase Celular tiene un campo para almacenar la fecha de creación del objeto podemos hacer algo como esto:
class Celular
{
private string marcaCelular;
public Celular() { }
public Celular(string MarcaCelular) { }
}
De esta forma podemos crear un objeto de la Clase Celular.
Celular objCelular = new Celular();
Código de Ejemplo Completo
No hay comentarios:
Publicar un comentario