How to Create Object in Java with Example

How to create Object in Java | In the previous tutorial, we have known a class is a model for creating objects. Creating an object means allocating memory to store the data of variables temporarily. i.e. we create an object of a class to store data temporarily.

Creating an object is also called instantiating an object. By creating an object, we can access members of any particular class. So, let us learn how to create object of a class in java?

How to create Object in Java?

In Java, an object of a class is created using the new keyword in three steps. They are as follows.
1. Declaration of a reference variable.
2. Creation of an object.
3. Linking the object and the reference variable.

Steps to create object in java

Declaration of  Reference variable

Basically, the declaration of an object means refers to an object. A general form of declaration of a reference variable is given below.

Classname  object_reference_variable; // Creating a reference variable of type Class.

The Classname is the name of the class which is being instantiated. The object reference variable is a variable of type Classname.

For example, consider a class whose name is College and object reference variable myCollege. It can be declared like this:
 College myCollege;

This statement tells the JVM to allocate memory space for a reference variable and names that reference variable myCollege. The reference variable is of type College.

Creating Object in Java

We can create an object in a general form like this:

   new Classname(); // Creating an object of class.

The class name followed by parentheses represents the constructor of the class.
For example,
          new College();
This statement tells the JVM to allocate memory space for a new College object on the heap.

Linking Object and Reference

Now, we will link the object and reference created above like this:

Classname object_reference_variable = new Classname(); // This is a syntax for creating an object of class in java.

Assigns the new College to the reference variable myCollege.
College myCollege = new College();


College ➝ Name of the class.
myCollege ➝ Object reference variable which stores the address of the object in the stack memory.
new      ➝ keyword that stores the object in the heap memory.
College() ➝ Constructor of the class.
=       ➝ The equal sign (=) is an assignment operator. It simply says to take the object created by a new keyword and assign it to the object reference variable.

When an object of class is created, the memory is allocated in the heap area to store instance variables. After creation of an object, JVM produces a unique reference number (address) for that object. This unique reference number is called hash code number.

This reference number is unique for all objects, except string objects. The address of the object is stored in the object reference variable in the stack memory.

We can know the hash code number or reference number (address) of an object by using hashCode() method of object class. The following code can be used to know the hash code number.

College myCollege = new College(); 
System.out.println(myCollege.hashCode()); // It will display hash code stored in myCollege.

Let’s understand the memory allocation for storing an object in Java by given below figure.

Memory allocation of object creation in java

When the statement College myCollege = new College(); will be executed by JVM, an object will be created in the heap memory and stores the data “Hello Java” in it. The address of the object is stored in the reference variable myCollege in the stack memory.

Key points:
Remember that creating an object in java means allocating memory for storing data.
You can also create an object of the class in two steps like this:

Step 1: College myCollege; // Declaration of reference to the object.
Step 2: myCollege = new College(); // Creating an object.

How to create Multiple Objects in Java

Creating multiple objects of one type is as follows:

College myCollege1 = new College();
College myCollege2 = new College();

Both reference variables have different memory addresses.

Creating the object with passing different parameters to the constructor.

Student st = new Student(); // It will call default constructor.
School sc = new School("DEEP"); // It will call Parameterized constructor.

Object Reference in Java

An object reference is a unique hexadecimal number that represents a memory address of the object. It is useful to access members of objects.

When a new object is created, a new reference number is allocated to it. It means that every object in Java will have a unique reference.

New Keyword in Java

In Java, a new operator is a special keyword which is used to create an object of the class. It allocates the memory to store an object during runtime and returns a reference to it. This reference is the address of the object in the heap memory allocated by the new operator.

This reference (memory address) is then stored in a variable called object reference variable that can be accessed from anywhere in the application. See below image.

For which purpose we create an object of class in Java?

We create an object in Java applications because of three reasons. They are as follows:
1. Since Java is a purely object-oriented programming language. So Everything is done in the form of objects only. Therefore, objects are required in the Java programming language.

2. To store data temporarily in Java application, we require to create an object. The object provides temporary storage for our data.

3. In Java, By creating an object, we can call the members of one class from another class. It is useful when we need to use common code in every class again and again.

4. To access members of any particular class, we have to create an object of the respective class

Whenever we create an object in any program, the Object reference variable is automatically generated. By using this object reference variable only, we can access the members of a particular class.

The reference variable must have reference value. The Dot(.) operator gives you to access an object’s state and behavior (instance variables and methods).  These are the reasons for which we create objects in Java programs.

How many ways to create object in Java?

There are several ways to create an object of class in Java. They are as follows.
1. Using the new keyword
2. Using Class.forName
3. Using Clone.
4. Using Object Deserialization.
5. Using ClassLoader.

In this tutorial, we have discussed object creation using the new keyword. In the further tutorial, we will know about other ways to create an object of class.

Using new keyword is the most basic and common way to create an object of a class in Java. Almost 99% of objects are created using the new keyword.

We can call any constructor using this method whether it is a non-argument or a parameterized constructor.

Object creation in Java with Example Programs

Let’s see a very simple example program step by step to understand the concept of object creation.

Program Source Code 1:
Let’s make a program where class HelloJava will contain a method display() and we will create an object of class to access that method.

package scientecheasy;
// Step 1: Create a class with the name HelloJava. 
  public class HelloJava
// Step 2: Declare the constructor with the class name. This constructor is a default.
 // It will print the message on the console. 
     System.out.println("Hello Java"); 
 // Step 3: Declare a method and Print any message which you want.
    void display()
       System.out.println("Welcome to online Java tutorial point. ");
// Step 4: Declare the main method to start the execution of program. This method is static.
   public static void main(String[] args)
// Step 5: Create an object of the class with the object reference variable 'obj'.
   HelloJava obj = new HelloJava(); // It will call default constructor as object created.

// Step 6: Now call the method to print the output on the console using object reference variable 'obj'.
      Hello Java Welcome to online Java tutorial point.

Key points: 
When we write anything in class, it is applicable for all its objects. If we create a method in the class, it is available as it is to all of class objects.

For example, in the preceding program, a class HelloJava contains a method display() that prints a message on the console.

If we create three objects to this class, all three objects of this class get a copy of this method and from any object, we can call and use this method.

Let’s understand it more clearly with another example program.

Let’s create a program in which we create three objects of a class and access the same method using three objects.

Program source code 2: 

package objectProgram;
public class Hello
// Declaration of instance method.
     void display() 
       System.out.println("Hello Java");

public static void main(String[] args)
 // Create three objects of class to access the same method. 
      Hello h1 = new Hello(); 
      Hello h2 = new Hello(); 
      Hello h3 = new Hello(); 

// Call instance method display() using reference variable h1, h2, and h3. 
         Hello Java 
         Hello Java 
         Hello Java

In the preceding example program, we have created three objects of class Hello and they are calling the same method display(). Here, the method is available to all class objects.

What is System.out.println()?

1. System is a class which is predefined by Sun Microsystem.
2. out is a variable declared in System class of type PrintStream.
3. println is a method defined in PrintStream class.

What is void in Java?

Void is a keyword that indicates that this method does not provide or return any data back to the class of an object.

Now, let’s take one more important example program for practice.

Let’s create a program in which we will calculate the sum of two numbers. You follow all the above steps.

Program source code 3:

package objectProgram;
public class Sum 
// Declare instance variables. 
    int a;
    int b;
// Declare a default constructor and initialize the value of variables. You can also initialize directly to the variables. This is another way to initialize the value of variables. 
       a = 50;
       b = 20; 

// Declare a method and write the logic to add the numbers. 
     void display()
       int sum = a+b; 
       System.out.println("Sum of two numbers: " +sum );

 public static void main(String[] args) 
 // Create an object of the class and call the method using reference variables to print output on the console. 
     Sum sm = new Sum(); 

If you are a beginner and unable to understand this program then you go for the next tutorial. You can easily understand after the next tutorial.

Hope that you will have understood how to create an object in Java. Keep in mind the following points for object creation in Java.

Key Points:

1. An object of class is created by calling constructor of the corresponding class through a new operator.

2. It is mainly created in three steps: Declaration, Instantiation, and Initialization.

3. In declaration, we simply define a variable with an object type.

4. Instantiating a class refers to creating an object of class that is done by using the new operator.

5. In initialization, we link new object with a reference variable.

6. Reference variable holds address of an object whereas a variable holds the data.

If this tutorial is useful, please share it on social networking sites for your friends.
Thanks for reading!!!Next ➤ Object Declaration & Initialization in Java⇐ Prev Next ⇒ 


Leave a Comment