This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes Beginning Java and the fly likes Anonymous Object Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Anonymous Object" Watch "Anonymous Object" New topic

Anonymous Object

Faraz Alig

Joined: Mar 14, 2010
Posts: 24
Hi Experts,

In Java we have a concept of Anonymous objects like

new Circle(); // (A)


System.out.println("Area is " + new Circle(5).getArea()); // (B)

In both these cases the constructor is called and hence the object should be created BUT as no handle/reference variable is attached to this one then it must be picked by the Garbage Collector.
And if this is the case then how can one really print the area as in the above e.g (B)

Please clarify this point.

Thanks in advance!!!
Christiaan Lombard

Joined: Nov 22, 2009
Posts: 26
Right after the object is created and used it will be eligible for garbage collection, but only after it was used (After: System.out.println("Area is " + new Circle(5).getArea());).

Jim Hoglund
Ranch Hand

Joined: Jan 09, 2008
Posts: 525
In many cases anonymous objects are anonymous only to you. For example, in:
both the anonymous Thread and anonymous MyRunnable are very alive
and active until the run() method completes. Also, they are given names
in the constructor parameter list.

Jim ... ...

Faraz Alig

Joined: Mar 14, 2010
Posts: 24
Thanks for this very useful reply.

I agree. Here's the link:
subject: Anonymous Object
Similar Threads
Objects and Behaviors
A flatland puzzle
Circle program errors
Help fast plz!!!!!!
Code sample for evil setter/getter