Aprenent Python Recorrent el camí pas a pas

33 Classe 03

La programació orientada a objectes és un paradigma de programació en la qual utilitzem objectes i les seues interaccions amb el desenvolupament.

Un objecte en la vida quotidana és una material, animada o inanimada, amb unes característiques, atributs i unes accions, mètodes.

En la vida quotidana:

  • Objecte: Humà.
  • Atribut: Color de la pell, forma dels ulls, etc.
  • Mètode: Caminar, correr, alçar-se, etc.

Una classe és una plantilla, un modle, en el qual s’estableixen els atributs i mètodes que té l’objecte.

1. Exemple de classe

class Humano:
    def __init__(self):
        print('Soy un objeto')

    def hablar(self,mensaje):
        print('mensaje')

pedro = Humano()
raul = Humano()

pedro.hablar('hola')
raul.hablar('Hola, Pedro')

2. Eixida

Soy un objeto
Soy un objeto
mensaje
mensaje

3. Explicació:

  1. El mètodo __init__ s’executa de seguida.
  2. El paràmetre self és la referència a l’objecte, té a veure amb la jerarquia.
  3. Tenim un mètode creat, deixant de banda self tenim el mètode hablar.

4. Exemple de classe 2

Centrem l’atenció ara amb els atributs:

class Humano:
    def __init__(self):
        self.edad = 15
        print('Soy un objeto')

    def hablar(self,mensaje):
        print('mensaje')

pedro = Humano()
raul = Humano()

print('Soy Pedro y tengo', pedro.edad)
print('Soy Raul y tengo', pedro.edad)

pedro.hablar('hola')
raul.hablar('Hola, Pedro')

5. Eixida

Soy un objeto
Soy un objeto
Soy Pedro y tengo 15
Soy Raul y tengo 15
mensaje
mensaje

6. Explicació de com utilitzar l’atribut

  1. Declare l’atribut self.edat = 25
  2. Imprimir l’atribut: print('Soy Pedro y tengo', pedro.edad) i print('Soy Raul y tengo', pedro.edad)

7. Exemple de classe 3

En cas que vullguerem canviar l’edat per una edat personalitzada per cada individu procediriem així:

class Humano:
    def __init__(self, edad):
        self.edad = edad

    def hablar(self,mensaje):
        print ('mensaje')

pedro = Humano(26)
raul = Humano(21)

print('Soy Pedro y tengo', pedro.edad)
print('Soy Raul y tengo', raul.edad)

pedro.hablar('hola')
raul.hablar('Hola, Pedro')

8. Eixida

Soy Pedro y tengo 26
Soy Raul y tengo 21
mensaje
mensaje

Explicació:

  1. Cal agregar un nou argument en la declaració del mètode def __init__(self, edad):
  2. Ara instaciem l’edat ací: pedro = Humano(26) i raul = Humano(21)
  3. Instanciem self.edad = edad.
  4. Ara construeix edats diferents perquè té atributs diferents, són objectes diferents.

Font: Videotutorial Codigo Facilito. Tutorial Python 13: Clases y Objetos