[Tutor] pseudo-private but protected?
Marilyn Davis
marilyn at deliberate.com
Mon Feb 23 18:21:39 EST 2004
On Mon, 23 Feb 2004, Alan Gauld wrote:
Thank you!
> > I think I get the pseudo-private name-mangling device.
> >
> > Are there any conventions or devices for 'pseudo-protected'
> attributes
> > and methods in Python?
>
> As a matter of interest, why do you think such a thing would be
> useful?
Oh. I don't! I just anticipate C++ people to ask the question and
want to be sure the answer is that it is not supported.
Or, I guess it could be useful if a (possibly virtual) base class had
base.set_name(), and its sub_classes are expected to call
base.set_name() in their sub_class.set_name() methods but we don't
want the base.set_name() method to be available outside the class.
>
> > These are accessible by members of the hierarchy, but not outside.
>
> That's one definition of protected, as used in Java and C++.
> It's not a universal definition - Delphi for example takes another
> approach. The "protected method" style of OO programming is best
> used as a form of protection for the programmer when dealing with
> statically typed languages with function overloading based on
> typed parameters. It basically provides a means of simplifying
I guess this isn't my example.
> the public interface while allowing access to multiple typed
> versions of that interface. Since Python does not use that mechanism,
> protected methods are somewhat irrelevant.
Oh.
>
> Which is why I ask why you thought you might want them?
Does my example make my question make sense?
Marilyn
>
> Alan G.
>
>
--
More information about the Tutor
mailing list