2 INFO – 21/02/2024 – POO – Encapsulamento – Blog Gerardão

2 INFO – 21/02/2024 – POO – Encapsulamento

Encapsulamento

Usamos esse princípio para juntar, ou encapsular, dados e comportamentos relacionados em entidades únicas, que chamamos de objetos.

Por exemplo, se quisermos modelar uma entidade do mundo real, por exemplo Computador.

Encapsular é agregar todos os atributos e comportamentos referentes à essa Entidade dentro de sua Classe.

Dessa forma, o mundo exterior não precisa saber como um Computador liga e desliga, ou como ele realiza cálculos matemáticos!

Basta instanciar um objeto da Classe Computador, e utilizá-lo! :wink:

O princípio do Encapsulamento também afirma que informações importantes devem ser contidas dentro do objeto de maneira privada e apenas informações selecionadas devem ser expostas publicamente.

Veja a imagem abaixo que exemplifica a relação entre atributos e métodos públicos e privados:

A implementação e o estado de cada objeto são mantidos de forma privada dentro da definição da Classe.

Outros objetos não têm acesso a esta classe ou autoridade para fazer alterações.

Eles só podem chamar uma lista de funções ou métodos públicos.

Essa característica de ocultação de dados fornece maior segurança ao programa e evita corrupção de dados não intencional.

Esse código não consegue alterar os atributos MARCA e MODELO, pois estão encapsulados, PRIVADOS ao acesso externo. Vejamos o próximo código:

Agora criamos um método PÚBLICO chamado alteraValores, com ele conseguimos acessar os atributos privados, pois esse acesso é realizado pela própria classe.

Mas ainda conseguimos reduzir e simplificar mais esse código. Criaremos um tipo especial de método chamado MÉTODO CONSTRUTOR, com ele conseguimos instanciar o objeto e ao mesmo tempo alterar os valores de suas propriedades. Vejamos o código abaixo:

ATIVIDADE

  1. Recrie o último exemplo
  2. Crie a classe Conta utilizando a linguagem Python. Utilize o diagrama de classes abaixo para implementar o código.

10 comentários em “2 INFO – 21/02/2024 – POO – Encapsulamento”

  1. class conta:
    def __init__(self, banco, agencia, numero_conta, saldo):
    self.__banco = agencia
    self.__agencia = banco
    self.__numero_conta = saldo
    self.__saldo = numero_conta

    def imprime(self):
    print(‘banco:’,self.__banco)
    print(‘agencia:’,self.__agencia)
    print(‘numero da conta:’,self.__numero_conta)
    print(‘saldo:’,self.__saldo)

    objetoconta = conta(‘Santander’,’Caixa’,’10.000′,’4002-8922′)
    objetoconta.imprime()

    Responder
  2. class conta:
    def __init__(self, banco, agencia, numero_conta, saldo):
    self.__banco = agencia
    self.__agencia = banco
    self.__numero_conta = saldo
    self.__saldo = numero_conta

    def imprime(self):
    print(‘banco:’,self.__banco)
    print(‘agencia:’,self.__agencia)
    print(‘numero da conta:’,self.__numero_conta)
    print(‘saldo:’,self.__saldo)

    objetoconta = conta(‘Santander’,’Caixa’,’10.000′,’4002-8922′)
    objetoconta.imprime()

    Responder
  3. I carry on listening to the reports lecture about receiving free online grant applications so I have been looking around for the finest site to get one. Could you advise me please, where could i get some?

    Responder
  4. Your writing is a true testament to your expertise and dedication to your craft. I’m continually impressed by the depth of your knowledge and the clarity of your explanations. Keep up the phenomenal work!

    Responder

Deixe um comentário para zoritoler imol Cancelar resposta