Desenvolvimento - Python

Introdução ao Python - Parte 4

Este é o quarto e último artigo da série Introdução ao Python. Vamos aprender nele o conceito de Classes, que é utilizado em Orientação a Objetos.

por Fábio Rizzo Matos



Este é o quarto e último artigo da série Introdução ao Python. Vamos aprender nele o conceito de Classes, que é utilizado em Orientação a Objetos. 5 - Classes

5.1 - Definindo uma Classe

Python trabalha com o conceito de classes muito facilmente. Existem outras formas de criar classes , porém não serão abordadas nesse livro. Vamos definir uma classe:

>>> class inicial:
... def __init__(self,nome):
... self.nome = nome
... def mostra(self):
... print "Class inicial - Nome: %s" % self.nome
...

Definindo e chamando a classe:

>>> objeto = inicial("Fabio")
>>> objeto.mostra()
Class inicial - Nome: Fabio

5.2 - Herança

Podemos definir uma classe que herda informações de uma outra classe. Veja:

Objeto Principal: Classe Inicial:

>>> class inicial:
... def __init__(self,nome):
... self.nome = nome
... def mostra(self):
... print "Class inicial - Nome: %s" % self.nome
...

Objeto que vai herdar: herdada.

>>> class herdada(inicial):
... def __init__(self,nome,idade):
... inicial.__init__(self,nome)
... self.upper = nome.upper()
... self.idade = idade
... def mostra(self):
... inicial.mostra(self)
... print "Classe herdada - Nome Maiusculo: %s " % self.upper
... if self.idade >=18:
... print "maior de idade"
... else:
... print "menor de idade"
... def idade(self):
... return self.idade
...

Instanciando o Objeto e chamando a classe:

>>> objeto1 = inicial("Fabio")
>>> objeto1.mostra()
Class inicial - Nome: Fabio
>>> objeto2 = herdada("Fabio",22)
>>> objeto2.mostra()
Class inicial - Nome: Fabio
Classe herdada - Nome Maiusculo: FABIO
maior de idade

5.3 - Classe de dados

Veja um exemplo de como implementar uma classe que realiza o armazenamento do valor em todas as suas instancias. Este exemplo foi retirado do faq do python.

>>> class c:
... count = 0
... def __init__(self):
... c.count = c.count +1
... def getcount(self):
... return c.count
...
>>> c1 = c()
>>> print "valor atual", c1.getcount()
valor atual 1
>>> print "valor atual", c1.getcount()
valor atual 1
>>> c2 = c()
>>> print "valor atual", c2.getcount()
valor atual 2
>>> c3 = c()
>>> print "valor atual", c3.getcount()
valor atual 3

E assim finalizamos os artigos de Introdução ao Python. Espero que tenham gostado e conto com sua opinião sugerindo melhorias, novos artigos e tirar as suas dúvidas!

Grande Abraço,

Fabio Rizzo Matos
www.fabiorizzo.com
fabio@fabiorizzo.com

Fábio Rizzo Matos

Fábio Rizzo Matos - Membro ativo da Comunidade Python/Zope e Plone, para qual escreve diversos artigos. Arquiteto de Software e Desenvolvedor, trabalha atualmente na ThreePointsWeb (contato@threepointsweb.com), empresa especializada em desenvolvimento e treinamentos Python, Zope e Plone, realizando treinamentos e consultorias em Plone. Mantenedor do site http://www.fabiorizzo.com além de responsável pela tradução de conteúdo.