how destruction of objects take place in java as compared to C++, with that I mean that in C++ by explicitly destroying objects I can know at any point of my program that how many objects of the class are existing at any point of time(by incrementing in the constructer & decrementing in the destructer a static variable and destroying objects with pointers). But in Java you are never certain about garbage collection(and hence finalization) so how in java I will come to know about the count of number of objects of a class at any particular point in a program.
Rahul, in case you want to keep track of the number of objects of a class you have, you can do so just as in C++. Increment a static counter variable in the constructor and decrement it in an overrided version of the finalize() method. Hence, just before garbage collection of this object, finalize() is called and you can decrement the counter. Note however that this count will only indicate how many UNCOLLECTED objects you have - NOT how many you have access to. As Ricky says, what good is an object if u don't have a reference to it ?!