Inheritance Question
Frank Millman
frank at chagford.com
Sat Nov 11 03:25:46 EST 2006
More information about the Python-list mailing list
Sat Nov 11 03:25:46 EST 2006
- Previous message (by thread): Tkinter: How do I change the actual width of a widget?
- Next message (by thread): Inheritance Question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Gabriel Genellina wrote: > At Saturday 11/11/2006 03:31, Frank Millman wrote: > > >Continuing your analogy of animals, assume a class A with a 'walk' > >method and an 'eat' method. > > > >Most animals walk the same way, but a few don't, so I create a subclass > >AW and override the walk method. > > > >Most animals eat the same way, but a few don't, so I create a subclass > >AE and override the eat method. > > > >How do I create an instance of an animal that both walks and eats > >differently? > > [snip] > Answer 1) Move *both* ways of walk, and *both* ways of eating, to > another base class. Best when this is pure behavior - no new > attributes are involved. > [snip details] > > Answer 2) Use an instance of another class to define how to walk and > how to eat. Advantage: it can later be modified at runtime (strategy pattern). > [snip details] Many thanks for this, Gabriel. I have seen explanations like this before, but my eyes usually glaze over before I have finished, and I end up more confused than when I started. With a combination of my subconscious slowly getting an understanding of this, and your clear explanation, I think I have finally got it. Obviously my real world situation is quite a bit more complex than this simple example, but with the help you have given me I can now experiment with different ideas and decide on the best strategy. Thanks again Frank
- Previous message (by thread): Tkinter: How do I change the actual width of a widget?
- Next message (by thread): Inheritance Question
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list