Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/08/2015, 15:49
Avatar de vangodp
vangodp
 
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 7 meses
Puntos: 38
Respuesta: ¿Por qué no es obligatorio implementar una función privada?

Tecnicamente no sé el por que, pero sé que por ejemplo en los patrones singleton, se suelen declarar los constructores de la clase privadamente, luego se crea una función que instancia una sola vez la clase al llamarla, si intentas llamarla más de una vez lo que hace es devolverte el puntero a la primera instancia. Supongo que es para prohibir que llamemos esa función a lo mejor en caso de herencia o lo que sea. XD

Un ejemplo podría ser el "caso penguino" XD. un penguino es una ave, pero no vuela, entonces si penguino hereda de la clase ave, no debería poder usar el método volar heredado. Una solución? "Redeclarar" el método volar como privado. Aun que no estoy tan seguro de lo que he dicho es solo cuestión de probar. ;)

La resposta corta seria..¡Para impedir que llamemos esa función! Como es privada no necesita cuerpo >_<. Ahora si esta como privada y intentas llamarla de la parte publica, entonces es un error tuyo, por que no tiene sentido no crees.

A ver si alguien nos aclara eso XD