Using the simple syntax introduced in Chapter 8, you have class methods, (multiple) inheritance, overriding, and extending. You've been able to factor out common code and provide a way to reuse implementations with variations. This is at the core of what objects provide, but objects also provide instance data, which we haven't even begun to cover.