Programação orientada a objetos
A programação orientada a objetos baseia-se na noção de criar um modelo do problema-alvo em seus programas. A programação orientada a objetos reduz os erros de programação e promove a reutilização do código. Python é uma linguagem orientada a objetos. Os objetos definidos em Python têm os seguintes recursos:
- Identidade. Cada objeto deve ser distinto, e isso deve ser testável. Os testes
iseis notexistem para essa finalidade. - Estado. Cada objeto deve ser capaz de armazenar o estado. Os atributos, como campos e variáveis de instância, existem para essa finalidade.
- Comportamento. Cada objeto deve ser capaz de manipular seu estado. Existem métodos para essa finalidade.
Python inclui os seguintes recursos para dar suporte à programação orientada a objetos:
- Criação de objeto baseado em classes. As classes são modelos para a criação de objetos. Os objetos são estruturas de dados com comportamento associado.
- Herança com polimorfismo. Python suporta herança única e múltipla. Todos os métodos de instância do Python são polimórficos e podem ser substituídos por subclasses.
- Encapsulamento com ocultação de dados. Python permite que os atributos sejam ocultos. Quando ocultos, você pode acessar atributos de fora da classe somente por meio de métodos da classe. As classes implementam métodos para modificar os dados.