Qual é o objetivo dos modificadores de acesso?

Eu sei que isso se aplica a muitas linguagens, e não apenas a Java, mas é a linguagem com a qual estou mais familiarizado.

Eu entendo o que os modificadores fazem e como usá-los. Eu só quero saber, por que precisamos deles? Por que todos os objetos não podem ser acessíveis, precisando ou não?