The previous chapter covered the basics of object-oriented programming. You learned how one class can subclass another class, thus building a hierarchy. Using an object hierarchy, classes can share functionality.
This chapter will focus on the details of object hierarchies, including how to extend them so that derived classes can specialize shared functionality. To demonstrate these concepts, we will build a tax application. This type of application is a good example of using object hierarchies, because the general idea of paying taxes is identical, regardless of the country, but the details are different.
From a technical perspective, we'll cover the following topics:
Interfaces, which ...