Leitura recomendada
Objetivos
Declarando uma classe
Em Python classes, representam o esqueleto de objetos, são declaradas utilizando um modificador de acesso, a palavra
reservada class e um nome de classe como pode ser visto na sintaxe abaixo:
Sintaxe
class nome_classe:
#corpo
Onde
class: palavra reservada para informar que a definição do tipo de dados é uma classe.
nome_classe: nome da classe que desejamos criar
Exemplo 1
class nome_classe:
pass
Saída
-
A criação de objetos ou instanciação de objetos na linguagem Python é feita utilizando construtor da classe.
Em Python não é necessário o uso da palavra new como em outras linguagens.
Sintaxe
nome_objeto = nome_classe()
Quando instanciamos um objeto utilizado a sintaxe acima, estamos invocando o método construtor padrão.
Esse assunto será visto mais adiante.
Exemplo 2
class nome_classe:
#corpo
classe = nome_classe()
Saída
-
As classes que possuem codificação são chamadas de classes concretas. Além de classe concreta, a linguagem Python tem
suporte a classes abstratas que serão vistas em Python: Classe Abstrata e Interface
.
Classes em Python possuem atributos irão guardar informações sobre nossos objetos. Para declará-los,
utilizamos os tipos de dados ou objetos disponíveis pela linguagem Python.
Sintaxe
class nome_classe:
nome_atributo = valor
Exemplo 2
class nome_classe:
atributo1 = 1
atributo2 = 'Teste'
Saída
-
Tanto os modificadores de acesso quanto os atribuitos serão vistos em Python: Atributos e Encapsulamento e Herança.
Além de atribuitos, as classes possuem métodos, que são funções que pertencem apenas às classes e são invocados por
um instância de objeto. O assunto método será visto em Python: Métodos e Sobrecarga.
Sintaxe
def nome_metodo(parametros):
#corpo
Exemplo 2
class nome_classe:
#atributos omitidos
#método
def metodo(p1,p2):
print(p1,p2)
Saída
-
A linguagem Python permite que nossas classes possuam outras classes declaradas internamente. Esse tipo
de classe interna ou aninhada possui as mesmas características de uma classe concreta.
Sintaxe
class nome_classe_externa:
#corpo
class nome_classe_interna:
#corpo
A instanciação de objetos utilizando classes internas é feita utilizando o nome da classe com escopo
mais externo, seguido do operador (.).
Sintaxe
variavel = objeto_classe_externa.nome_classe_interna()
Exemplo 2
class classe:
pass
class filha:
pass
#instanciando
obj = classe #classe
obj = classe.filha #classe interna
Saída
-
Classes mais externas, em relação ao escopo, não podem acessar diretamente os recursos de classes internas.
Classes internas, de forma semelhante, não podem acessar diretamente recursos de uma classe mais externa.
Histórico de atualizações
- 19/09/2024 - revisão 1 - Ajustes gramaticais; correção em sintaxe 'Atributos;
- 19/02/2024 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.