Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
26 views

Object Class in Java

Uploaded by

66anilkumar66a
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Object Class in Java

Uploaded by

66anilkumar66a
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Object class in Java

Object class is present in java.lang package.

Every class in Java is directly or indirectly derived from the Object class.

If a Class does not extend any other class then it is direct child class
of Object and if extends other class then it is an indirectly derived.

Therefore the Object class methods are available to all Java classes.

Hence Object class acts as a root of inheritance hierarchy in any Java


Program.
Using Object class methods
There are methods in Object class:

toString() : toString() provides String representation of an Object and used to convert


an object to String.

The default toString() method for class Object returns a string consisting of the name
of the class of which the object is an instance, the at-sign character `@’, and the
unsigned hexadecimal representation of the hash code of the object.
Example
public String toString()
{
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

It is always recommended to override toString() method to get our own String


representation of Object

Note : Whenever we try to print any Object reference, then internally toString() method is called.
Student s = new Student(); // Below two statements are equivalent
System.out.println(s);
System.out.println(s.toString());
hashCode() : For every object, JVM generates a unique number which is
hashcode.

It returns distinct integers for distinct objects.


A common misconception about this method is that hashCode() method returns
the address of object, which is not correct.

It convert the internal address of object to an integer by using an algorithm.

The hashCode() method is native because in Java it is impossible to find address


of an object, so it uses native languages like C/C++ to find address of the object.
Use of hashCode() method : Returns a hash value that is used to search object in
a collection.

JVM(Java Virtual Machine) uses hashcode method while saving objects into
hashing related data structures like HashSet, HashMap, Hashtable etc.

The main advantage of saving objects based on hash code is that searching
becomes easy.
Note : Override of hashCode() method needs to be done such that for every
object we generate a unique number.
equals(Object obj) :

Compares the given object to “this” object (the object on which the method is
called).

It gives a generic way to compare objects for equality.

Note : It is generally necessary to override the hashCode() method whenever this


method is overridden, so as to maintain the general contract for the hashCode
method, which states that equal objects must have equal hash codes.

getClass() : Returns the class object of “this” object and used to get actual
runtime class of the object.

It can also be used to get metadata of this class.

The returned Class object is the object that is locked by static synchronized
methods of the represented class.

As it is final so we don’t override it.


finalize() method :
This method is called just before an object is garbage collected.

It is called by the Garbage Collector on an object when garbage collector


determines that there are no more references to the object.

Override finalize() method to dispose system resources, perform clean-up


activities and minimize memory leaks.

Note :finalize method is called just once on an object even though that object
is eligible for garbage collection multiple times.

clone() : It returns a new object that is exactly the same as this object. For
clone() method refer Clone()

The remaining three methods wait(), notify() notifyAll() are related to


Concurrency.

You might also like