Revised: Fri Apr 01 17:48:44 CDT 2016
This page is included in the following Books:
Table of contents
Preface
This module is one of a series of modules designed to teach you about Object-Oriented Programming (OOP) using Java.
Viewing tip
I recommend that you open another copy of this document in a separate browser window and use the following links to easily find and view the Figuresand Listings while you are reading about them.
Figures
- Figure 1 . The extends keyword.
Listings
- Listing 1 . The program named This01.
- Listing 2 . The program named This02.
- Listing 3 . The program named This03.
- Listing 4 . The program named Super3.
- Listing 5 . The program named Super4.
Preview
This module explains the use of the keywords this and super . Short sample programs illustrate how you can use these keywords for several purposes.
I will discuss and illustrate the use of the this keyword in the following situations:
- To bypass local variables or parameters that hide member variables having the same name, in order to access the member variable.
- To make it possible for one overloaded constructor to call another overloaded constructor in the same class.
- To pass a reference to the current object to a method belonging to a different object (as in implementing callbacks, for example).
I will also discuss and illustrate the use of the super keyword in the following situations:
- To bypass the overridden version of a method in a subclass and execute the version in the superclass.
- To bypass a member variable in a subclass in order to access a member variable having the same name in a superclass.
- To cause a constructor in a subclass to call a parameterized constructor in the immediate superclass.
Discussion and sample code
You already know quite a lot about OOP
By now you know that an object is an instance of a class . You know that all variables and methods in Java must be contained in a class or anobject. You know that the three primary characteristics of an object-oriented programming language are:
- encapsulation
- inheritance
- polymorphism .
If you have been studying this series of modules on the Essence of OOP in Java, you already know quite a lot about OOP in general, and the implementationof OOP in Java in particular.
A few more important OOP/Java concepts
However, there are a few more important concepts that I haven't previously discussed in this series of modules. In this module, I will explain the use ofthe keywords this and super .
Data and methods
The class provides the plan from which objects are built. This plan defines the data that is to be stored in an object, and the methods for manipulating that data. The data is variously referred to as data members, fields , and variables , depending on which book you are reading.