Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/02/2016, 12:34
Koan
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 14 años, 4 meses
Puntos: 9
Respuesta: ¿Son imprenscindibles los atributos y metodos privados?

Cita:
Iniciado por AlvaroG Ver Mensaje

Los atributos privados existen casi únicamente porque en general no se puede confiar en la responsabilidad de los compañeros de trabajo :D
Sí, de los compañeros de trabajo mejor no fiarse

Aunque el proteger un atributo o metodo es relativo:

Código Python:
Ver original
  1. class Prueba:
  2.     def __init__(self):
  3.         self.__protegido = 4

Código Python:
Ver original
  1. >>> obj = Prueba()
  2. >>> obj.__protegido

Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
obj.__protegido
AttributeError: 'Prueba' object has no attribute '__protegido'

Logicamente arroja la excepcion. Pero haciendo:

Código Python:
Ver original
  1. >>> obj._Prueba__protegido
  2. 4

Incluso permite su modificacion:
Código Python:
Ver original
  1. >>> obj._Prueba__protegido = 5
  2. >>> obj._Prueba__protegido
  3. 5

No se, tampoco hay que escribir mucho codigo para variar un atributo privado o protegido...