7.3. Classes e objetos em Python: Encapsulamento e modificadores de acesso

Página 39

Na programação orientada a objetos (OOP) em Python, as classes e os objetos desempenham um papel crucial. As classes são como um modelo ou um esboço que define o que um objeto deve conter, enquanto os objetos são instâncias de uma classe, que contém variáveis e métodos definidos pela classe. Neste capítulo, vamos nos aprofundar em um aspecto importante da OOP em Python - Encapsulamento e modificadores de acesso.

7.3.1 Encapsulamento

Encapsulamento é um dos quatro conceitos fundamentais da programação orientada a objetos. Ele se refere ao agrupamento de dados e métodos que manipulam esses dados dentro de uma única unidade, que é a classe. Em outras palavras, o encapsulamento é uma maneira de proteger os dados de serem acessados diretamente.

Em Python, o encapsulamento é realizado usando métodos e variáveis privados e protegidos. Uma variável privada é precedida por dois sublinhados (__), enquanto uma variável protegida é precedida por um único sublinhado (_). Aqui está um exemplo de como o encapsulamento é implementado em Python:

class Car:
    def __init__(self):
        self.__price = 20000

    def sell(self):
        print("Selling price: ", self.__price)

car = Car()
car.sell()

Neste exemplo, a variável __price é privada, então ela não pode ser acessada diretamente de fora da classe. Em vez disso, ela é acessada através do método sell().

7.3.2 Modificadores de Acesso

Os modificadores de acesso são usados em OOP para definir o escopo de uma variável, método ou classe. Em Python, existem três tipos de modificadores de acesso - público, privado e protegido.

Os membros públicos (variáveis, métodos, etc.) são acessíveis de qualquer parte do programa. Todos os membros de uma classe são públicos por padrão em Python.

Os membros privados são acessíveis apenas dentro de sua própria classe. Eles são definidos adicionando dois sublinhados antes do nome do membro.

Os membros protegidos são semelhantes aos membros privados, mas eles são acessíveis dentro da classe e suas subclasses. Eles são definidos adicionando um único sublinhado antes do nome do membro.

class Car:
    def __init__(self):
        self._speed = 60    # protected member
        self.__price = 20000  # private member

Neste exemplo, _speed é um membro protegido e __price é um membro privado.

Em Python, os modificadores de acesso são mais uma convenção do que uma regra rígida. Ainda é possível acessar membros privados e protegidos diretamente, embora isso seja considerado uma má prática.

Para concluir, o encapsulamento e os modificadores de acesso são ferramentas poderosas em OOP que ajudam a manter a integridade dos dados e a tornar o código mais seguro e fácil de manter. Eles são uma parte essencial da criação de sistemas robustos e eficientes com Python e Django.

Esperamos que este capítulo tenha lhe dado uma compreensão clara do encapsulamento e dos modificadores de acesso em Python. No próximo capítulo, exploraremos mais conceitos avançados da OOP em Python.

Ahora responde el ejercicio sobre el contenido:

Qual é a função do encapsulamento na programação orientada a objetos em Python e como é implementado?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Siguiente página del libro electrónico gratuito:

407.4. Classes e objetos em Python: Herança e polimorfismo

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.