C# PruebaThis: Referencia a los miembros del objeto actual con “this”

Los objetos pueden acceder a una referencia a si mismo usando la palabra clave this. Hace referencia a la instancia actual de la clase. Puede ser usado con el fin de evitar ambigüedades como en este ejemplo:

t1

El constructor de la clase TiempoSimple recibe tres argumentos int para inicializar el objeto. En el constructor usamos nombres de parámetros de entrada idénticos a los nombres de las variables de instancia de la clase (hora,minuto,segundo). Usando this podemos diferenciar entre unas y otras.

El método público y accesible por el cliente  CrearString devuelve un objeto string creado usando la referencias this de forma explícita e implícita.

t2

Ahora vemos como podemos usar la clase, creamos una instancia de la clase  TiempoSimple y invocamos a su constructor.  Luego invocamos al método CrearString del objeto y muestra los resultados en pantalla.

t3

Ejemplo completo:


 /*
  * Created by SharpDevelop.
  * User: i.landajuela
  * Date: 20/12/2016
  * Time: 17:15
  * 
  * To change this template use Tools | Options | Coding | Edit Standard Headers.
  */
 using System;
 
 namespace PruebaThis
 {
     
     public class TiempoSimple
     {
         private int hora=0,minuto=0,segundo=0;
         
         public TiempoSimple(int hora,int minuto, int segundo)
         {
             this.hora = hora;
             this.minuto = minuto;
             this.segundo = segundo;
         }
         
         public string CrearString()
         {
             return string.Format("{0:24}: {1}\n{2,24}: {3}",
                                  "this.AStringUniversal()",this.AStringUniversal(),
                                  "AStringUniversal()",AStringUniversal());
         }
         
         public string AStringUniversal()
         {
             return string.Format("{0:D2}:{1:D2}:{2:D2}",
                                 this.hora,this.minuto,this.segundo);
         }
 
     }
     
     class Program
     {
         public static void Main(string[] args)
         {
             TiempoSimple objT1 = new TiempoSimple(23,24,12);
             
             Console.WriteLine(objT1.CrearString());
                         
             Console.Write("Press any key to continue . . . ");
             Console.ReadKey(true);
         }
     }
 } 

 

 

Anuncios

Un pensamiento en “C# PruebaThis: Referencia a los miembros del objeto actual con “this”

  1. Pingback: C# ClassConstructor: Notas sobre constructores | Internet y GNU/Linux

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s