Serdar Tumgoren wrote:
Hi everyone,
I was wondering if there's anyone who can offer a use case/rationale
for nested class?
In my Python Pipelines program I have:
class Count:
...
class Counter:
...
When an instance of Count is created, one or more instances of Counter
are created, belonging to that instance. There is no need for the
Counter class to be visible anywhere outside the Count class. Nesting
the definition makes that clear and puts the definition where it is easy
to find.
Also some day (down the road) there might be some other class in which
I'd like to create instances of another class named Counter. Nesting the
Counter classes makes that possible.
For, instance, in the following example (taken from here:
http://www.brpreiss.com/books/opus7/html/page598.html):
class A(object):
def __init__(self):
self.y = 0
class B(object):
def __init__(self):
self.x = 0
def f(self):
pass
My initial thought was that perhaps they inherit the behavior of
parent classes, but that apparently is not the case:
Are there specific situations when nested classes come in handy
(perhaps for grouping conceptually related classes that don't share
attributes?).
Or is it typically better to keep all classes on the same level of a
heirarchy, and then just use inheritance to establish parent-child
relationships where appropriate?
--
Bob Gailer
Chapel Hill NC
919-636-4239
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor