## More about Objects and Classes

The relational operations on primitive data are ==, >=, <=, >, <, and !=. They compare two data values, when those values' type has an ordering. For example, integers are ordered by size or magnitude. The result of a relational operation is a boolean value: either True or False. The relational operators on objects like Strings are different, and they are expressed as methods. Pay special attention to the equality method, equals().

### 12. Changing Data inside a Point

Answer:Just as the program is about to close, how many objects have been created ?Six — three Point objects and three temporary String objectsHow many object references are there?Three — each referencing a PointHas 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:

java.awt.Point[x=12,y=45]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?