I l@ve RuBoard |
This chapter has been about two special objects in Python—classes and instances—and the language tools that create and process them. Class objects are created with class statements, provide default behavior, and serve as generators for multiple instance objects. Together, these two objects support full-blown object-oriented development and code reuse. In short, classes allow us to implement new objects, which export both data and behavior.
In terms of their main distinctions, classes support multiple copies, specialization by inheritance, and operator overloading, and we explored each of these features in this chapter. Since classes are all about namespaces, we also studied the ways they extend module and function namespace notions. And finally, we explored a few object-oriented design ideas such as composition and delegation, by seeing how to implement them in Python.
The next chapter concludes our core language tour, with a quick look at exception handling—a simple tool used to process events, rather than build program components. As a summary and reference of what we learned in this chapter, here's a synopsis of the terms we've used to talk about classes in Python:
An object (and statement) that defines inherited attributes
Objects created from a class, which inherit its attributes, and get their own namespace
An attribute of a class object that's bound to a function object
By convention, the name given to the implied instance object in methods
When an instance or class accesses a class's attributes by qualification
A class another class inherits attributes from
A class that inherits attribute names from another class
I l@ve RuBoard |