For example, the following program creates two two-d point objects and prints their fields:
class TwoPointPrinter {
public static void main(String[] args) {
TwoDPoint origin; // only declares, does not allocate
TwoDPoint one; // only declares, does not allocate
// The constructor allocates and usually initializes the object
origin = new TwoDPoint();
one = new TwoDPoint();
// set the fields
origin.x = 0.0;
origin.y = 0.0;
one.x = 1.0;
one.y = 0.0;
// print the two-d points
System.out.println("The origin is at " + origin.x + ", " + origin.y);
System.out.println("One is at " + one.x + ", " + one.y);
} // end main
} // end TwoPointPrinter
one
and origin
are two different reference variables
pointing to two different point objects. It's not enough to identify a variable as a member of a class like
x
or y
in the example above. You have to
specify which object in the class you're referring to.