[Tutor] A beginner having problems with inheritance
Sydney Shall
s.shall at virginmedia.com
Thu Jul 10 12:27:54 CEST 2014
On 09/07/2014 20:17, Danny Yoo wrote:
>> My error was simply that I inadvertently used the same name for a method
>> (function) in the derived class that I had already used in the parent class.
>> The result was then a very obscure error because the wrong calculation was
>> performed and later on an array was empty.
>> Fortunately, thanks to you very generous tutors I have learned to read the
>> error trace very carefully indeed.
>
> Ah, yes, that one. It's happened to me too.
>
> It's one of the reasons why inheritance makes me nervous sometimes.
> It's a problem that's fairly language-independent.
>
> (If you'd like to know the details, the example that I was involved in
> is described in the comments on:
> https://github.com/bootstrapworld/js-numbers/pull/5. Essentially, we
> subclassed some base class, and wrote a method called BigNumber.exp()
> to do exponentiation. Unfortunately, we didn't realize that our
> superclass already had defined an exp() method. It ended up showing
> up as a very strange, obscure error. Same class of problem.)
>
>
> Side note, Python does have a hack called "name mangling" that can be
> used to try to avoid this problem:
>
> https://docs.python.org/2/tutorial/classes.html#private-variables-and-class-local-references
>
>
> Good luck!
>
Thanks for the reply.
I had read the second reference that you gave some time ago, but of
course I had forgotten about it.
I shall try and make use of it now.
Thanks for the help.
--
Sydney Shall
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20140710/311461ae/attachment.html>
More information about the Tutor
mailing list