Muita gente já postou aqui sobre a diferença entre public, protected e private.
Mas eu ainda nao percebi as vantagens em usá-las. Ou seja, onde é vantajoso para mim que certa classe nao tenha acesso direto aos atributos/metodos de uma outra classe? Ou entao, qual a vantagem em se definir metodos setters/getters para acessar atributos de uma classe a partir de outra? Deu pra enteder?
Pra que serve protected, private e public eu entendo. Mas ainda nao me deparei com uma situacao em isso faça sentido.
