More about Objects and Classes

12. Changing Data inside a Point


  • Just as the program is about to close, how many objects have been created ?

        Six — three Point objects and three temporary String objects
  • How many object references are there?
        Three — each referencing a Point
  • Has any garbage been created?
        Three objects — each temporary String object

Changing Data inside a Point

Look again at the description of class Point, 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.

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( pt );     

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


Here is what it writes to the screen:


Question 12:

How many Point objects are created by this program?

How many temporary String objects are created by this program?