Python Language
Método Anulando
Buscar..
Método básico anulando
Este es un ejemplo de anulación básica en Python (por motivos de claridad y compatibilidad con Python 2 y 3, usando una nueva clase de estilo e print
con ()
):
class Parent(object):
def introduce(self):
print("Hello!")
def print_name(self):
print("Parent")
class Child(Parent):
def print_name(self):
print("Child")
p = Parent()
c = Child()
p.introduce()
p.print_name()
c.introduce()
c.print_name()
$ python basic_override.py
Hello!
Parent
Hello!
Child
Cuando el Child
se crea la clase, que hereda los métodos de la Parent
clase. Esto significa que cualquier método que tenga la clase padre, la clase hija también tendrá. En el ejemplo, la introduce
se define para la clase Child
porque está definida para Parent
, a pesar de no estar definida explícitamente en la definición de clase de Child
.
En este ejemplo, la anulación se produce cuando Child
define su propio método print_name
. Si este método no fue declarado, entonces c.print_name()
habría impreso "Parent"
. Sin embargo, Child
ha anulado el Parent
definición 's de print_name
, y por eso ahora al llamar c.print_name()
, la palabra "Child"
se imprime.