7. Classes e objetos em Python

Página 36

7. Classes e Objetos em Python

As classes e objetos são os dois principais aspectos da programação orientada a objetos. Uma classe é um modelo para a criação de objetos (uma instância particular de uma classe), e um objeto é uma instância de uma classe.

7.1 O que é uma Classe?

Uma classe é um protótipo para a criação de objetos em Python. É uma estrutura lógica que tem alguns atributos e métodos definidos. Uma classe é definida usando a palavra-chave class.

class MyClass:
  x = 5

Neste exemplo, criamos uma classe chamada MyClass, que tem um atributo chamado x com o valor 5.

7.2 O que é um Objeto?

Um objeto é uma instância de uma classe. Quando uma classe é definida, apenas a descrição do objeto é definida. Portanto, nenhum espaço de memória é alocado. A criação de um objeto é feita usando a função constructor da classe. Este método é chamado quando um objeto é criado a partir de uma classe e permite que a classe inicialize os atributos do objeto.

p1 = MyClass()
print(p1.x)

Neste exemplo, p1 é um objeto da classe MyClass que tem um atributo chamado x.

7.3 A função __init__()

Em Python, a função __init__() é o método construtor que é chamado quando um objeto é criado a partir de uma classe. Este método é útil para fazer qualquer inicialização que você queira fazer com o seu objeto. Quando você cria um método __init__(), você está dizendo ao Python que quando um objeto é criado a partir desta classe, o objeto deve ser inicializado com os valores especificados.

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)

Neste exemplo, Person é uma classe com a função __init__() que toma dois argumentos, e cria atributos para o nome e a idade.

7.4 Métodos de Objetos

Os objetos também podem conter métodos. Os métodos em objetos são funções que pertencem ao objeto.

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

  def myfunc(self):
    print("Hello my name is " + self.name)

p1 = Person("John", 36)
p1.myfunc()

Neste exemplo, nós definimos um método na classe Person chamado myfunc que imprime uma linha de texto.

7.5 O parâmetro self

O parâmetro self é uma referência à instância atual da classe e é usado para acessar variáveis que pertencem à classe. Ele não precisa ser nomeado self , você pode chamá-lo como quiser, mas tem que ser o primeiro parâmetro de qualquer função na classe.

7.6 Modificando Objetos

Você pode modificar propriedades em objetos como este:

p1.age = 40

Ou você pode deletar propriedades do objeto:

del p1.age

Você também pode deletar objetos:

del p1

Esses são os conceitos básicos de classes e objetos em Python. Eles são fundamentais para a programação orientada a objetos em Python e, quando combinados com outros conceitos como herança e polimorfismo, fornecem uma maneira poderosa de estruturar seu código.

Now answer the exercise about the content:

O que é uma classe em Python?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

377.1. Classes e objetos em Python: Introdução a classes e objetos

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text