Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/10/2010, 21:42
devilboy9999
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 14 años, 7 meses
Puntos: 2
Duda con Propiedades Get y Set

Bueno según lo ke tengo entendido es ke el get y set sirve aparte de encapsular los atributos, para impedir ke una variable tome un valor ke no kerámos

por ejemplo tengo un formulario con un solo campo de texto, en ese form lo ke kiero es validar ke el usuario haya escrito su nombre.

tengo la sig clase usando Get y set y validando el campo del texto en el set:

Código:
    public class GetYSet2
    {

        private string nombre;



        public GetYSet2(string nom)
        {
            nombre = nom;

        }


        public string Nombre
        {

            get
            {

                return nombre;
            }

            set
            {
                if (nombre == "")
                    nombre = "Errorrrrrrrrrrrrr";
                else
                nombre = value;
            }

        }

    }
ahora mi formulario tiene un boton con esto:

Código:
        private void button1_Click(object sender, EventArgs e)
        {
            GetYSet2 obj = new GetYSet2(textBox1.Text);


            obj.Nombre=textBox1.Text;

           MessageBox.Show(obj.Nombre);

        }
si kito este pedaso:

Código:
 obj.Nombre=textBox1.Text;
el programa no me hace la validacion y si el usuario no ingresa nada, al darle click en el boton no me aparece nada de nada



ahora haciendo lo mismo pero con funciones tengo la misma clase get yset de este modo:

Código:
public class GetYSet
    {

        private string nombre;
        



        public GetYSet(string nom)
        {
            Nombre(nom);
            

        }



        public string Nombre()
        {
            
                return nombre;           

        }

        public void Nombre(string value)
        {

            if (value.Length == 0)
                nombre = "Error";
            else
                nombre = value;
        }




    }
y mi boton del form principal de este modo:


Código:
        private void button1_Click(object sender, EventArgs e)
        {
            GetYSet obj = new GetYSet(textBox1.Text);          

           MessageBox.Show(obj.Nombre());

        }

como pueden ver es mucho mas corto ke el anterior.


Bueno entonces mi pregunta es para ke diablos sirve los gets y sets si solo me están haciendo mas dificil la vida y un codigo con mas lineas


espero me respondan

salu2