19.15. Encapsulamento: Programação orientada a objetos

Página 76

19.15. Encapsulamento: Programação orientada a objetos

Encapsulamento é um dos quatro pilares fundamentais da Programação Orientada a Objetos (POO). Os outros três são herança, polimorfismo e abstração. O encapsulamento é um mecanismo que restringe o acesso direto aos elementos de um objeto. Ele é usado para ocultar os valores ou o estado de um objeto estruturado, que geralmente são armazenados em variáveis de instância.

Por que o encapsulamento é importante?

O encapsulamento é fundamental para a integridade dos dados e para a segurança. Ele protege os dados do objeto de modificações indesejadas e garante que somente os métodos dentro do objeto possam acessar e modificar seus atributos. Isso é vital para prevenir a corrupção de dados e garantir a confiabilidade do software.

Como funciona o encapsulamento?

Na prática, o encapsulamento é implementado usando métodos de acesso - getters e setters - e modificadores de acesso, como private, public e protected.

  • Getters: São métodos que permitem o acesso aos atributos do objeto. Eles são usados para obter o valor de uma variável de instância.
  • Setters: São métodos que permitem modificar os atributos do objeto. Eles são usados para definir o valor de uma variável de instância.
  • Modificadores de acesso: São palavras-chave que definem o nível de acesso aos atributos e métodos de um objeto. Private significa que o atributo ou método só pode ser acessado dentro da própria classe. Public significa que ele pode ser acessado de qualquer lugar. Protected significa que ele pode ser acessado dentro da própria classe e por subclasses.

Exemplo de encapsulamento

Suponha que temos uma classe chamada Pessoa, que tem dois atributos: nome e idade. Queremos que o nome possa ser acessado e modificado por qualquer um, mas queremos que a idade só possa ser acessada e modificada por métodos dentro da própria classe. Aqui está como poderíamos fazer isso:

class Pessoa {
  public String nome;
  private int idade;

  public String getNome() {
    return nome;
  }

  public void setNome(String nome) {
    this.nome = nome;
  }

  public int getIdade() {
    return idade;
  }

  private void setIdade(int idade) {
    if (idade >= 0) {
      this.idade = idade;
    }
  }
}

Neste exemplo, qualquer um pode acessar e modificar o nome, mas só podemos acessar a idade através do método getIdade() e só podemos modificar a idade através do método setIdade(). Além disso, o método setIdade() verifica se a idade é um valor válido (não negativo) antes de modificá-la.

Conclusão

O encapsulamento é uma ferramenta poderosa para preservar a integridade dos dados e para criar um código seguro, confiável e fácil de manter. Ele permite que você controle quem pode acessar e modificar os atributos de um objeto, e como eles podem fazê-lo. Isso é vital para prevenir a corrupção de dados e para garantir a confiabilidade do software.

Embora possa parecer um pouco complicado no início, com prática e experiência, o encapsulamento se tornará uma parte natural de sua caixa de ferramentas de programação. E uma vez que você dominar o encapsulamento, você estará bem no seu caminho para se tornar um mestre na Programação Orientada a Objetos.

Now answer the exercise about the content:

Qual dos seguintes é uma descrição precisa do encapsulamento na Programação Orientada a Objetos?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

7720. Estruturas de Dados (Listas, Pilhas, Filas)

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text