Up to now, our description of inheritance has been very informal, and we have largely considered only the situation where a child class adds new behavior to the methods inherited from its parent. In this chapter we will consider what happens when, instead of adding new behavior, the child class has a method with the same name as the parent, and thus will override the parents behavior.