O encapsulamento é responsável por garantir a segurança de um objeto. Por meio deste paradigma é possível impossibilitar o acesso direto a dados de um objeto e ocultar informações externas a ele, em outras palavras, quando construído a classe é possível definir o acesso a cada elemento desta classe. Assim, o programador garante fluxo de execução a uma instância da classe. Em Java, por exemplo, ao se derivar uma classe a partir de uma classe base, a classe base pode ser herdada como public, protected ou private. A diretiva public é utilizada em Java para aplicar a encapsulação pública