Skip to main content

Java Exception Handling MCQ Test

  Loading…

Constructor Overloading in Java

Constructor Overloading in Java


Constructor overloading is a concept in Java where a class can have multiple constructors with different parameter lists. Each constructor provides a different way to initialize an object. The choice of constructor to be invoked is determined by the number and types of arguments passed during object creation.


Example:


public class Car {

    // Attributes

    String make;

    String model;

    int year;


    // Default Constructor

    public Car() {

        make = "Unknown";

        model = "Unknown";

        year = 0;

    }


    // Parameterized Constructor 1

    public Car(String make, String model) {

        this.make = make;

        this.model = model;

        this.year = 0;

    }


    // Parameterized Constructor 2

    public Car(String make, String model, int year) {

        this.make = make;

        this.model = model;

        this.year = year;

    }


    // Method to Display Car Information

    void displayInfo() {

        System.out.println("Make: " + make);

        System.out.println("Model: " + model);

        System.out.println("Year: " + year);

        System.out.println();

    }

}



Object Creation and Constructor Overloading:


// Creating Objects using Different Constructors

Car defaultCar = new Car();                        // Default Constructor

Car partialCar = new Car("Honda", "Civic");       // Parameterized Constructor 1

Car fullCar = new Car("Ford", "Mustang", 2022);   // Parameterized Constructor 2


// Displaying Car Information

defaultCar.displayInfo();

partialCar.displayInfo();

fullCar.displayInfo();


In this example, the `Car` class has three constructors:

1. Default Constructor: Initializes all attributes to default values.

2. Parameterized Constructor 1: Accepts make and model, initializes year to default.

3. Parameterized Constructor 2: Accepts make, model, and year.


By providing multiple constructors, the class becomes versatile, allowing the programmer to create objects in different ways based on their requirements. The appropriate constructor is selected based on the arguments passed during object instantiation. This flexibility enhances the usability and adaptability of the class in various scenarios.

Comments

Popular posts from this blog

Iterators and Collections

In Java, iterators are objects that allow for sequential access to the elements of a collection. The Java Collections Framework provides the Iterator interface, which defines methods for iterating over collections such as lists, sets, and maps. Here's an explanation of iterators and their relationship with collections, along with examples: Iterator Interface: The Iterator interface provides methods to iterate over the elements of a collection sequentially: - boolean hasNext(): Returns true if there are more elements to iterate over. - E next(): Returns the next element in the iteration. - void remove():  Removes the last element returned by `next()` from the underlying collection (optional operation). Collections and Iterators: 1. Collection Interface:    - Collections represent groups of objects, such as lists, sets, and maps.    - They provide methods for adding, removing, and accessing elements. 2. Iterator Usage:    - Collections implement the Iter...

The Collection Interface.

  The Collection Interface.