1. Nessa aula vamos aprender a importância dos métodos getter e setter no contexto de encapsulamento.
  2. Bem, na última aula nós vimos que conseguimos controlar a privacidade do atributo salário. Mas será que não existe nenhuma forma para acessar e modificar esse atributo?
  3. Sim, existe. Não diretamente, como vimos. Mas podemos alterar por meio de métodos. Lembra da premissa do encapsulamento: proteja os atributos e controle o acesso e valores deles por meio de atributos.
  4. Pensando nisso, temos os métodos getter e setter. O método getter é utilizado para retornar valores de atributos e o método setter é utilizado para modificar valores de atributos.
  5. Para praticar, vamos criar o arquivo 9-getter_setter.py.
class Employee:
    
    def __init__(self, name, salary):
        self.name = name
        self.__salary = salary
        
    def show(self):
        # accessing public data member
        print(f"Nome: {self.name} Salário: {self.__salary}")
  
       # getter method
    def get_salary(self):
        return self.__salary

    # setter method
    def set_salary(self, salary):
        self.__salary = salary
        
fulano = Employee("Fulano", 4000)
sicrano = Employee("Sicrano", 10000)
fulano.name = "Fulano 2"
fulano.set_salary(40000)
fulano.show()
sicrano.show()
  1. Para executar o arquivo, vamos executar o comando: python .\9-getter_setter.py.

Img1.png