Programming in the Large II: Objects and Classes
Whereas a subroutine represents a single task, an object can encapsulate both data (in the form of instance variables) and a number of different tasks or "behaviors" related to that data (in the form of instance methods). Therefore objects provide another, more sophisticated type of structure that can be used to help manage the complexity of large programs.
This chapter covers the creation and use of objects in Java. Section 5.5 covers the central ideas of object-oriented programming: inheritance and polymorphism. However, in this textbook, we will generally use these ideas in a limited form, by creating independent classes and building on existing classes rather than by designing entire hierarchies of classes from scratch. Section 5.6 and Section 5.7 cover some of the many details of object oriented programming in Java. Although these details are used occasionally later in the book, you might want to skim through them now and return to them later when they are actually needed.
Contents of Chapter 5:
- Section 1: Objects, Instance Methods, and Instance Variables
- Section 2: Constructors and Object Initialization
- Section 3: Programming with Objects
- Section 4: Programming Example: Card, Hand, Deck
- Section 5: Inheritance, Polymorphism, and Abstract Classes
- Section 6: this and super
- Section 7: Interfaces, Nested Classes, and Other Details
- Programming Exercises
- Quiz on This Chapter