Foros del Web » Programación para mayores de 30 ;) » Java »

¿Por qué usar get y set?

Estas en el tema de ¿Por qué usar get y set? en el foro de Java en Foros del Web. Hola, No entiendo el hecho de usar get y set, ¿alguien me lo puede explicar de manera simple, por favor? No entiendo la diferencia de ...
  #1 (permalink)  
Antiguo 23/08/2014, 08:35
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
¿Por qué usar get y set?

Hola,
No entiendo el hecho de usar get y set, ¿alguien me lo puede explicar de manera simple, por favor?

No entiendo la diferencia de usarlos o no, me parece que está demás usarlo.

Saludos.
  #2 (permalink)  
Antiguo 23/08/2014, 09:18
Avatar de lufe  
Fecha de Ingreso: mayo-2009
Mensajes: 294
Antigüedad: 14 años, 10 meses
Puntos: 15
Respuesta: ¿Por qué usar get y set?

Cita:
Iniciado por sirguille Ver Mensaje
Hola,
No entiendo el hecho de usar get y set, ¿alguien me lo puede explicar de manera simple, por favor?

No entiendo la diferencia de usarlos o no, me parece que está demás usarlo.

Saludos.
Son necesarios porque cuando creas un objeto (basado en una clase) ese objeto internamente puede manejar varias variables y métodos, cumplir diferentes funciones etc... pero las que sean privadas quedan "dentro" del objeto, y la forma que tienes de pasarle y pedirle datos es con Set y Get.

Las variables o atributos públicos pueden ser accedidos sin problema, pero para los privados tienes que usar SET y GET.

Imagina una calculadora, dentro hace cantidad de cálculos y procedimientos, pero a ti sólo te es permitido enviarle cierta información (la cuenta que quieres hacer, 2+3 que sería algo así como un SET) y luego te es permitido obtener el resultado (5 en este caso, que lo tienes al pulsar ENTER y sería algo así como el GET)

De esta forma tú solo accedes a lo que precisas del objeto calculadora sin poner en riesgo su funcionamiento interno.
  #3 (permalink)  
Antiguo 23/08/2014, 11:24
Avatar de jc_moj  
Fecha de Ingreso: septiembre-2009
Ubicación: Andalucía
Mensajes: 137
Antigüedad: 14 años, 7 meses
Puntos: 12
Respuesta: ¿Por qué usar get y set?

Hola

Es por el tema del encapsulamiento, prevenir errores y facilidad para ampliar o modificar el código.

Te pongo un pequeño ejemplo, imagina que quieres crear una clase que uno de los datos que contiene es una fecha, puedes hacer la variable pública, y así accedes a ella desde cualquier parte, o privada, y así tienes que crear unos setters y getters para acceder a ella.

Imagina que quieres controlar que cuando se le asigne una fecha, ésta sea válida, si no usaste los setters, tendrás que repasar todo el código y añadir la comprobación en cada uno de los accesos a dicha variable, por el contrario, si usaste un setters, tan solo tendrás que modificar éste. Como ves, es mucho menos trabajo y mucho menos propenso a errores.

Personalmente, salvo raras excepciones, todo lo hago privado y creo los setters y getters que necesito.

Saludos
  #4 (permalink)  
Antiguo 23/08/2014, 16:03
 
Fecha de Ingreso: septiembre-2005
Mensajes: 74
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: ¿Por qué usar get y set?

Cita:
Iniciado por lufe Ver Mensaje
Son necesarios porque cuando creas un objeto (basado en una clase) ese objeto internamente puede manejar varias variables y métodos, cumplir diferentes funciones etc... pero las que sean privadas quedan "dentro" del objeto, y la forma que tienes de pasarle y pedirle datos es con Set y Get.

Las variables o atributos públicos pueden ser accedidos sin problema, pero para los privados tienes que usar SET y GET.

Imagina una calculadora, dentro hace cantidad de cálculos y procedimientos, pero a ti sólo te es permitido enviarle cierta información (la cuenta que quieres hacer, 2+3 que sería algo así como un SET) y luego te es permitido obtener el resultado (5 en este caso, que lo tienes al pulsar ENTER y sería algo así como el GET)

De esta forma tú solo accedes a lo que precisas del objeto calculadora sin poner en riesgo su funcionamiento interno.
Gracias por la explicación.

Saludos.

Última edición por sirguille; 23/08/2014 a las 16:08
  #5 (permalink)  
Antiguo 24/08/2014, 03:16
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: ¿Por qué usar get y set?

Hola:

Lo que te explica jc_moj es correcto. Añado este post que aunque critico la idea de tener herramientas que hace automáticamente los set y los get, también explico cual es realmente el motivo de fondo para hacer los atributos privados y ponerles métodos set y get. A ver si te ayuda http://blog.chuidiang.com/2013/07/13...glas-a-ciegas/

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #6 (permalink)  
Antiguo 25/08/2014, 20:21
Avatar de rhq
rhq
 
Fecha de Ingreso: junio-2012
Ubicación: Córdoba
Mensajes: 12
Antigüedad: 11 años, 9 meses
Puntos: 3
Respuesta: ¿Por qué usar get y set?

Paradigma Orientado a Objetos (POO)

Etiquetas: usar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:22.