Skip to content
Related Articles

Related Articles

Difference between the Constructors and Methods
  • Last Updated : 14 May, 2019
GeeksforGeeks - Summer Carnival Banner

Java is a pure OOPS concept based programming language. Hence in Java, all the variables, data and the statements must be present in classes. These classes consist of both constructors and methods. Methods and Constructors are different from each other in a lot of ways.

Constructors are used to initialize the object’s state. Like methods, a constructor also contains collection of statements(i.e. instructions) that are executed at time of Object creation. Each time an object is created using new() keyword at least one constructor (it could be default constructor) is invoked to assign initial values to the data members of the same class.


// Java Program to illustrate constructor
class Geek {
    int num;
    String name;
    // This would be invoked while an object
    // of that class created.
        System.out.println("Constructor called");
class GFG {
    public static void main(String[] args)
        // this would invoke default constructor.
        Geek geek1 = new Geek();
        // Default constructor provides the default
        // values to the object like 0, null
Constructor called

A method is a collection of statements that perform some specific task and return the result to the caller. A method can perform some specific task without returning anything. Methods allow us to reuse the code without retyping the code. In Java, every method must be part of some class which is different from languages like C, C++, and Python.


// Java Program to illustrate methods
class Addition {
    int sum = 0;
    public int addTwoInt(int a, int b)
        // Adding two integer value.
        sum = a + b;
        // Returning summation of two values.
        return sum;
class GFG {
    public static void main(String[] args)
        // Creating an instance of Addition class
        Addition add = new Addition();
        // Calling addTwoInt() method
        // to add two integer
        // using instance created
        // in above step.
        int s = add.addTwoInt(1, 2);
        System.out.println("Sum of two "
                           + "integer values: "
                           + s);
Sum of two integer values: 3

Differences between Constructors and Methods:

A Constructor is a block of code that initializes a newly created object.A Method is a collection of statements which returns a value upon its execution.
A Constructor can be used to initialize an object.A Method consists of Java code to be executed.
A Constructor is invoked implicitly by the system.A Method is invoked by the programmer.
A Constructor is invoked when a object is created using the keyword new.A Method is invoked through method calls.
A Constructor doesn’t have a return type.A Method must have a return type.
A Constructor initializes a object that doesn’t exist.A Method does operations on an already created object.
A Constructor’s name must be same as the name of the class.A Method’s name can be anything.
A class can have many Constructors but must not have the same parameters.A class can have many methods but must not have the same parameters.
A Constructor cannot be inherited by subclasses.A Method can be inherited by subclasses.

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up
Recommended Articles
Page :