Classes em Python

Vamos estudar como criar classes na linguagem Python.

Por
2 min. de leitura

Fala, meus consagrados! Tudo beleza com vocês?

Vamos estudar como criar classes na linguagem Python.

Teoria

As classes podem definir construtores e atributos e métodos de instâncias ou de classe.

Abaixo, temos uma sintaxe mais completa para criação de classes em Python:

class NomeClasse:
    def __init__(self, parâmetro 1, parâmetro 2, parâmetro N):
        self.atributo 1 = parâmetro 1
        self.atributo 2 = parâmetro 2
        self.atributo N = parametron N
    def nomeMetodo(self, [parâmetro 1, parâmetro 2, ...]):
        {bloco de instruções}
        [return] {valor}

Vamos simplificar e usar uma sintaxe mais simples para criação de uma classe:

class NomeClasse:
    {bloco de instruções}

Na criação de uma classe, usamos a palavra-chave class, seguida do nome da classe.

Para criar um objeto, usamos a seguinte sintaxe:

variável = NomeClasse()

A sintaxe acima mostra como um objeto é criado e inicializado e como uma variável recebe essa nova instância como retorno.

Essa sintaxe representa um construtor de instâncias de classe. Ele serve para inicializar o estado de uma instância, podendo, para isso, receber alguns valores como parâmetros.

Vamos agora usar um exemplo prático para entendermos melhor a criação de classes em Python. Começaremos com exemplo da criação da classe Professor, com os atributos nome e disciplina.

Exemplo:

Cada objeto criado por ter valores diferentes para esses atributos de instância.

No exemplo, foi criado um objeto da classe Professor que é referenciado pela variável rogerio:

rogerio = Professor()

A partir da variável rogerio, acessamos os atributos de instância nome e disciplina:

  • rogerio.nome = “Rogerão Araújo”; e
  • rogerio. disciplina = “Desenvolvimento de Sistemas”.

Os atributos definidos em uma classe em Python são públicos, o que faz com que qualquer objeto possa ter acesso direto aos atributos de outro objeto.

Exemplo:

Agora vamos fazer algumas questões para treinarmos essa revisão.

Questões de concursos

[FCC 2012 TRE/CE – Analista Judiciário – Análise de Sistemas] É INCORRETO afirmar que em Phyton, (Marque o texto da letra como CERTO ou ERRADO)

[D] instâncias são objetos criados a partir de uma classe definida pelo programador; o que Python chama de instância é frequentemente denominado objeto em outras linguagens.

Comentários:

Os objetos são instâncias das classes. Quando um objeto é criado, ele usa a estrutura definida da sua classe, ou seja, o estado e o comportamento definidos pela classe.

Gabarito: CERTO.

[FCC 2012 TRE/CE – Analista Judiciário – Análise de Sistemas] É INCORRETO afirmar que em Phyton, (Marque o texto da letra como CERTO ou ERRADO)

[E] é possível acessar os atributos da instância diretamente, sem a necessidade de usar um método.

Comentários:

Sim. É possível acessar os atributos de uma instância de classe (objeto) sem a necessidade de usar um método porque os atributos definidos em uma classe em Python são públicos.

Gabarito: CERTO.

[CCV/UFS  2014 UFS – Técnico de Tecnologia da Informação] Sobre a linguagem Python, afirma-se: (Marque o texto do item como CERTO ou ERRADO)

[III] Possui uma implementação de orientação a objetos em que todos os atributos são, obrigatoriamente, privados.

Comentários:

Python suporta sim os conceitos da orientação a objetos, porém, os atributos definidos em uma classe em Python são públicos.

Gabarito: ERRADO.

[IFPE 2019 IFPE – Técnico em Tecnologia da Informação – Desenvolvimento] Sobre a linguagem de Programação Python, analise as afirmações a seguir. (Marque o texto do item como CERTO ou ERRADO)

[II] Como qualquer outra linguagem orientada a objetos, Python segue o princípio do acesso uniforme (uniform access principle) sugerindo que atributos das classes sejam privados e que sejam acessados apenas através de métodos gets e sets.

Comentários:

Os atributos definidos em uma classe em Python são públicos, o que faz com que qualquer objeto possa ter acesso direto aos atributos de outro objeto, não precisando de métodos gets e sets.

Gabarito: ERRADO.

Então é isso!
[]s e até a próxima!
_________________________
Professor Rogerão Araújo

Por
2 min. de leitura