Revised: Thu Mar 31 15:56:25 CDT 2016
This page is included in the following Books:
Table of contents
- Preface
- Preview
- Discussion and sample code
- Summary
- What's next?
- Miscellaneous
- Complete program listing
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 . Output date and time.
- Figure 2 . Five seconds later.
- Figure 3 . Same date and time as before.
- Figure 4 . A new date and time.
- Figure 5 . Same date and time as before.
- Figure 6 . Output from overridden toString method in Date class.
Listings
- Listing 1 . Beginning of the class named MyClass01.
- Listing 2 . Signature of the main method.
- Listing 3 . Display some text.
- Listing 4 . Display date information.
- Listing 5 . A five-second delay.
- Listing 6 . Instantiate a new object.
- Listing 7 . Display the new Date object.
- Listing 8 . Accessing class variable via an object.
- Listing 9 . Another new object.
- Listing 10 . Display the date and time.
- Listing 11 . Display date information.
- Listing 12 . Revisiting System.out.println.
- Listing 13 . Complete program listing.
Preview
Static members
There is another aspect of OOP in Java that I have avoided up to this point in the discussion: static variables and static methods.
Tends to complicate ...
I have avoided this topic because, while not particularly difficult, the existence of static members tends to break up the simple structures that I have discussed in previous modules in this collection.
While static members can be useful in some situations, the existence of static members tends to complicate the overall object-oriented structure of Java.
Avoid overuse of static members
Furthermore, the overuse of static members can lead to problems similar to those experienced in languages like C and C++ that support global variables andglobal functions.
When to use static members
I will discuss the use of static members in this module, and will provide some guidelines for their use.
The class named Class
I will also introduce the class named Class and discuss how it enters into the use of static variables and methods.
Instance members versus class members
I will describe the differences between instance members and class members with particular emphasis being placed on their accessibility.
Three kinds of objects
From a conceptual viewpoint, there are at least three kinds of objects involved in a Java program:
- Ordinary objects
- Array objects
- Class objects
Ordinary objects
All (or at least most) of the discussion up to this point in the collection deals with what I have referred to in the above list as ordinary objects .