Classes e Objetos em Python aula 16 – Curso de programação em Python

172 2

Bem vindos á décima sexta aula do curso de programação em Python do Techmoz

Este artigo faz parte do curso de programação em Python do Techmoz. Para acessar outras aulas do curso, por favor visite o índice do curso de programação em Python .

OBJETIVOS DA AULA:

  • Conceito de classes e Objetos em Python
  • Exemplos

Vamos hoje ver os conceitos iniciais da programação orientada a objetos.Na aula anterior, vimos que na orientação a objetos, macacos, leões,elefantes e morcegos poderiam ser considerados objetos, e como objetos tem um determinado comportamento, eles poderiam ter o comportamento ‘comer’(cada um a sua maneira claro!). Mas como passar isso para um programa Python?Para fazer isso, podemos usar classes. Classes, em programação, podem ser definidos como sendo um conjunto de objetos com características em comum. Por exemplo, se você quer criar um conjunto de cães no seu programa, em vez de criar cada cão num processo separado, você poderia criar um template para criar cães. Isso mesmo e que são classes!!!Ok! vamos logo ver a sintaxe da criação de uma classe em Python( estes conceitos você perceberá ao longo dos exemplos!):Para criar uma classe em Python usa-se a palavra reservada class. Aqui vai a classe mais simples em Python:

class Cachorros:    pass

Aqui você já deve perceber que criamos uma classe que não faz nada usando a palavra reservada pass. Note que o nome da classe sendo uma variável, deve seguir todas as regras de declaração das mesmas.Prontos! Já temos um template para a criação dos nossos cachorros! Para fazer isso usamos um processo chamado instanciação, que é o processo pelo qual se criam objetos de uma classe. Por exemplo podemos criar um cachorro fazendo:

>>>Cachorros()

Note que Cachorros é uma classe, mas Cachorros() é uma instancia desta classe! Pode verificar isso testando as duas palavras no IDLE.Mas como nos iremos precisar deste objecto no futuro, é necessário referencia-lo a uma variável, portanto o mais conveniente e fazer:

>>>c=Cachorros()

Assim c passa a ser uma referência a cachorros.Vamos fazer alguns testes no IDLE com classes e instancias para você perceber a diferença:

>>>class Cachorros:    ...pass>>>Cachorros # Cachorros e uma classe>>>Cachorros() #Cachorros() e uma instancia>>>c=Cachorros() >>>dir(c) #Lembra-se desta função? ['__doc__', '__module__'] #A instancia possui propriedades padrão>>>d=Cachorros >>>dir(d) ['__doc__', '__module__'] #Ah! A classe também tem>>>type(c) # E desta função?>>>type(d)>>>c2=Cachorros()>>>c==c2 False # Mas todos não são Cachorros()?>>>id(c) 12245512>>>id(c2) 12245032 #Ah! tem uma identificação diferente!>>>c.__name__Traceback (most recent call last): File “”, line 1, in c.__name__ AttributeError: Cachorros instance has no attribute ‘__name__’>>>d.__name__ ‘Cachorros’>>>

Portanto, a partir daqui você já deve ter uma idéia sobre classes e como cria-las em Python! Para a próxima aula veremos outros conceitos da Orientação a objetos: Atributos e métodos em Python. Ai você verá como é que um simples Cachorro poder comer em Python!

(Visited 16 times, 1 visits today)