A good answer might be:

Just as the program is about to close,
how many objects have been created     6 --- three Point objects and three temporary String objects
and how many object references are there?     3 --- each referencing a Point
Has any garbage been created?    3 objects --- each unreferenced String object

Changing Data inside a Point

Look again at the description of class Point. One of the methods is:

public void move( int x, int y ) ;

This method is used to change the x and the y data inside a Point object. The modifier public means that it can be used anywhere in your program; void means that it does not return a value. This part of the description

( int x, int y )

says that when you use move, you need to supply two int parameters that give the new location of the point. A parameter is information you supply to a method.

Here is the example program, modified again:


import java.awt.*;
class PointEg4
{

  public static void main ( String arg[] )
  {
    Point pt = new Point( 12, 45 );   // construct a Point
    System.out.println( "First values: " + pt );     

    pt.move( -13, 49 ) ;              // change the x and y in the Point
    System.out.println( "Final values: " + pt ); 

  }
}

Here is what it writes to the screen:

First values: java.awt.Point[x=12,y=45]
Final values: java.awt.Point[x=-13,y=49]

QUESTION 12:

How many Point objects are created by this program?
How many temporary String objects are created by this program?