What's the purpose the hook method showing in a class definition?
Sibylle Koczian
nulla.epistola at web.de
Sat Oct 19 14:04:24 EDT 2019
Am 19.10.2019 um 13:11 schrieb jfong at ms4.hinet.net:
> For the two examples below:
> (1)
>>>> class A:
> ... def foo(self):
> ... self.goo()
> ...
>>>> class B(A):
> ... def goo(self):
> ... print(1)
> ...
>
> (2)
>>>> class A:
> ... def foo(self):
> ... self.goo()
> ... def goo(self): pass
> ...
>>>> class B(A):
> ... def goo(self):
> ... print(1)
> ...
>
> Both can get the same result:
>>>> b = B()
>>>> b.foo()
> 1
>>>>
>
> What's the benefit of having the hook method goo() in class A in example 2?
>
> --Jach
>
None - as long as nobody tries one of those:
a = A()
a.foo()
or
class C(A):
def foo(self):
super().foo()
print(2)
c = C()
c.foo()
More information about the Python-list
mailing list