The Object class is the highest-level class in the Java class hierarchy. The Class class is used to represent the classes and interfaces that are loaded by a Java program.
In Core Java, the Object
and Class
classes serve distinct purposes.
- Object Class:
- The
Object
class is at the top of the Java class hierarchy. - Every class in Java is directly or indirectly derived from the
Object
class. - It provides several methods that are common to all objects, such as
toString()
,equals()
,hashCode()
, andgetClass()
. - These methods can be overridden in user-defined classes to provide custom implementations.
- The
- Class Class:
- The
Class
class is part of thejava.lang
package. - It is used to represent classes and interfaces in a running Java application.
- It provides methods to get information about a class or interface, such as its name, fields, methods, and constructors.
Class
class is commonly used in reflection, a feature that allows you to inspect and interact with classes, methods, and fields dynamically at runtime.
- The
Here’s a brief example:
java
// Using Object class
public class ExampleObjectClass {
public static void main(String[] args) {
Object obj = new Object();
System.out.println(obj.toString()); // toString() method from Object class
}
}
// Using Class classpublic class ExampleClassClass {
public static void main(String[] args) {
Class<?> clazz = String.class;
System.out.println(“Class Name: “ + clazz.getName());
System.out.println(“Simple Name: “ + clazz.getSimpleName());
}
}
In summary, the Object
class provides a base for all classes and includes common methods, while the Class
class is used for obtaining metadata about classes and interfaces at runtime.