Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

C# Konstruktor Overloading

Kelebihan Beban Konstruktor C#

Dalam artikel ini, Anda akan mempelajari tentang overloading konstruktor di C# dengan bantuan contoh.

Dalam C#, mirip dengan metode overloading, kita juga bisa membebani konstruktor. Untuk overloading konstruktor, harus ada dua atau lebih konstruktor dengan nama yang sama tetapi berbeda

Sebelum Anda mempelajari tentang overloading konstruktor, pastikan untuk mengetahui tentang konstruktor C#.


Kita dapat melakukan overloading konstruktor dengan cara berikut:

1. Jumlah parameter yang berbeda

Kita dapat membebani konstruktor jika jumlah parameter dalam konstruktor berbeda.

 class Car {   

  Car() {
    ...
  }

  Car(string brand) {
    ...
  }
    
  Car(string brand, int price) {
    ...
  }

}

Di sini, kami memiliki tiga konstruktor di kelas Mobil . Dimungkinkan untuk memiliki lebih dari satu konstruktor karena jumlah parameter dalam konstruktor berbeda.

Perhatikan bahwa,

Contoh:Overloading Konstruktor dengan jumlah parameter yang berbeda

using System;

namespace ConstructorOverload {

  class Car {   
    
    // constructor with no parameter
    Car() {
      Console.WriteLine("Car constructor");
    }
     
    // constructor with one parameter
    Car(string brand) {
      Console.WriteLine("Car constructor with one parameter");
      Console.WriteLine("Brand: " + brand);
    }

    static void Main(string[] args) {

      // call with no parameter
      Car car = new Car();

      Console.WriteLine();

      // call with one parameter 
      Car car2 =  new Car("Bugatti");
     
      Console.ReadLine();
    }
  }
}

Keluaran

Car constructor

Car constructor with one parameter
Brand: Bugatti

Dalam contoh di atas, kita telah membebani Mobil konstruktor:

  1. satu konstruktor memiliki satu parameter
  2. yang lain memiliki dua parameter

Berdasarkan jumlah argumen yang diteruskan selama pemanggilan konstruktor, konstruktor yang sesuai dipanggil.

Di sini,


2. Berbagai jenis parameter

class Car {   

  Car(string brand) {
    ...
   }

  Car(int price) {
    ...
  }
}

Di sini, kami memiliki dua Mobil konstruktor dengan jumlah parameter yang sama. Kami dapat membuat konstruktor dengan parameter yang sama karena tipe data di dalam parameter berbeda.

Perhatikan bahwa,

Contoh:Konstruktor overloading dengan tipe parameter yang berbeda

using System;

namespace ConstructorOverload {

  class Car {   
    
    // constructor with string parameter
    Car(string brand) {
      Console.WriteLine("Brand: " + brand);
    }

    // constructor  with int parameter
    Car(int price) {
      Console.WriteLine("Price: " + price);
    }

    static void Main(string[] args) {

      // call constructor  with string parameter
      Car car = new Car("Lamborghini");
      
      Console.WriteLine();

      // call constructor  with int parameter
      Car car2 =new Car(50000);
    
      Console.ReadLine();
    }
  }
}

Keluaran

Brand: Lamborghini

Price: 50000

Dalam program di atas, kita telah membebani konstruktor dengan berbagai jenis parameter.

Di sini,

  1. Objek mobil - memanggil konstruktor dengan string jenis parameter
  2. Objek car2 - memanggil konstruktor dengan int jenis parameter

3. Urutan parameter yang berbeda

Car {

  Car(string brand, int price) {
    ...
  }

  Car(int speed, string color) {
    ... 
  }

}

Di sini, kami memiliki dua konstruktor dengan jumlah parameter yang sama. Hal ini dimungkinkan karena urutan tipe data dalam parameter berbeda.

Perhatikan bahwa,

Contoh:Konstruktor overloading dengan urutan parameter yang berbeda

using System;

namespace ConstructorOverload {

  class Car {   
    
    // constructor with string and int parameter
    Car(string brand, int price) {

      Console.WriteLine("Brand: " + brand);
      Console.WriteLine("Price: " + price);
    }
    
    // constructor with int and string parameter
    Car(int speed, string color) {
      
      Console.WriteLine("Speed: " + speed + " km/hr");
      Console.WriteLine("Color: " + color);
    }
    static void Main(string[] args) {

      // call constructor  with string and int parameter
      Car car = new Car("Bugatti", 50000);
      
      Console.WriteLine();

      // call constructor with int and string parameter
      Car car2 =new Car(60, "Red");
    
      Console.ReadLine();
    }
  }
}

Keluaran

Brand: Bugatti
Price: 50000

Speed: 60 km/hr
Color: Red

Dalam program di atas, kita telah membebani konstruktor dengan urutan parameter yang berbeda.

Di sini,

  1. Objek mobil - memanggil konstruktor dengan string dan int parameter masing-masing
  2. Objek car2 - memanggil konstruktor dengan int dan string parameter masing-masing

Bahasa C

  1. Konstruktor C#
  2. C# Kelas Bersarang
  3. Metode C# Overloading
  4. Kelebihan Operator Python
  5. Konstruktor Java
  6. Konstruktor enum Java
  7. Apa itu Cairan Pendingin Mesin Mobil?
  8. Operator C++ Overloading dengan Contoh
  9. Overloading Konstruktor di Java:Apa itu &Contoh Program
  10. Java - Konstruktor