# More about Objects and Classes

## 10. It expects a reference to a String as a parameter.

Answer:Just as the program is about to close, how many objects have been created?     Four, counting the String object.Has any garbage been created?    No, because a reference variable points to each object.

# Automatic Call of toString()

It looks like the following will not work:

 Point a = new Point(); // a is a Point reference System.out.println( a ); | +--- should be String reference

However, it does work, for the following reason:

When a parameter should be a String reference, but is a reference to another type of object, Java calls the object's toString() method to create a String and then uses the resulting String reference.

All objects (of any type at all) have their own toString() method, so this trick works with any object.

Question 10:(Puzzle: ) Does a String object have a toString() method?