Summary
In this chapter, we have finished examining the building blocks or concepts of organizing code in Java that we began in Chapter 5, Language Fundamentals – Classes. We looked at methods and a range of issues that need to be considered when writing a method. From there, we examined inheritance, a way in which we can reuse or share code.
The interface introduced the concept of a contract or list of methods that must be written by any class that implements the interface. The specialized class type called record
for simplifying the creation of immutable objects was next up.
Inheritance and interfaces support the concept of polymorphism. This permits the creation of methods that expect an instance of a superclass or interface class but receive an instance of any class that either inherits or extends the superclass or implements the interface.
We ended the chapter by looking at how we connect objects to objects. Composition implies that the object is created outside...