Skip to main content

Object class in Java

It is non final and concrete class available in java.lang package. 

As java.lang package by default imported in all java classes there is no need to extend object class explicitly.

In java all classes (not interfaces) are directly or indirectly extended from java.lang.Object class

In other words java.lang.Object is ultimate base class/root class of java class hierarchy. 

Object class do not extend any class or implement any interface.

It does not contain nested type as well as field. 

Object class contains 11 methods. 

It contains default constructor

Object object=new Object(); ok 

Object object= new Object(“Hello”); Not Ok

Consider following code: 

Class Person{

 } 

Class Employee extends Person{ 

}

In above code, java.lang.object is direct super class of class Person

In case of class Employee, class Person is direct super class and class object is indirect super class.

Methods of object class

1. public String toString(); 

2. public boolean equals(Object obj); 

3. public native int hashCode( );

4. protected native Object clone( )throws CloneNotSupportedException. 

5. protected void finalize( void )throws Throwable. 

6. public final native Class getClass( ); 

7. public final void wait( )throws InterruptedException

8. public final native void wait( long timeout)throws InterruptedException 

9. public final void wait( long timeout, int nanos)throws InterruptedException 

10. public final native void notify( ); 

11. public final native void notifyAll();


Comments

Popular posts from this blog

equals method of object class in java

  In Java, the equals method is a fundamental method inherited by all classes from the Object class.           Here’s an explanation of the equals method: Purpose: The equals method is used to compare two objects to determine if they are logically equivalent. By default, the implementation in the Object class checks if the two object references point to the same memory location (i.e., if they are the same instance). Signature : public boolean equals(Object obj) Explanation: Method Override: Classes can override the equals method to provide their own definition of object equality based on their specific needs. When overriding, the method should adhere to certain principles to ensure consistency and correctness of equality comparisons. Default Behavior (from Object class): The default implementation in the Object class checks if the two object references ( this and obj ) refer to the exact same object in memory using the == operator: public boo...

What is real use of interface: mostly asked interview question

Actually in real project development interfaces are use to write business logic code . Also Interfaces in java are powerful tools that allow you to define a contract for what a class can do, without specifying how it does it. it means we can give method declaration in interface and what that method does actually that responsibility is given to the class which is going to implement that class. They are used for several real-world purposes like enabling polymorphism , creating loosely coupled systems , and defining common behaviors across different classes . Real-World Use of Interfaces Let's look at some practical scenarios where interfaces are commonly used: 1. Multiple Inheritance (via Interfaces):  Java doesn't support multiple inheritance with classes, but it allows multiple inheritance with interfaces. This allows a class to implement multiple interfaces, enabling it to inherit behaviors from more than one source. 2. Polymorphism: Interfaces allow you to treat different o...

Roadmap to become a fullstack developer

 Becoming a Full Stack Developer means gaining proficiency in both frontend and backend development, as well as understanding the tools and practices that tie them together. Below is a roadmap to guide your journey toward becoming a full-stack developer. This roadmap covers the key areas, from foundational knowledge to advanced topics. Roadmap to Becoming a Full Stack Developer 1. Learn the Basics of Web Development 1.1 HTML (Hypertext Markup Language) Learn the basic structure of web pages. Understand the role of elements like <div>, <span>, <a>, <img>, etc. Learn about semantic HTML (<header>, <footer>, <article>, etc.). 1.2 CSS (Cascading Style Sheets) Learn how to style web pages (colors, fonts, spacing, etc.). Master CSS layout techniques like Flexbox and Grid. Understand the importance of Responsive Design (media queries, mobile-first approach). 1.3 JavaScript (JS) Learn the fundamentals: variables, loops, conditionals, functions. Und...