Što je preopterećenje metode u C #?

Kad želite implementirati značajku polimorfizma, to se vrši uz pomoć metode Overloading. U laičkom izrazu, ako želimo koristiti jednu funkciju za više oblika, koristimo metodu preopterećenja. Budući da je C # jezik temeljen na OOP-u, u potpunosti podržava polimorfizam.

Programer može koristiti jednu klasu više puta s istim nazivom s različitim parametrima. Tijekom korištenja polimorfizma dvije su klase ili metode mogle koristiti isto ime.

Razgovarajmo o raznim metodama korištenja parametara u klasama i metodama c #.

  1. Metodu možemo preopteretiti na temelju nekoliko proslijeđenih parametara. U metodama se parametri trebaju navesti kao argumenti.
  2. Dvije metode se ne mogu definirati istim imenom s istim tipom i redoslijedom proslijeđenih parametara. Dao bi vam pogrešku.
  3. Iako prevoditelj ne uzima u obzir vrstu povratka, dvije metode se ne mogu deklarirati istim imenom, tipom ili potpisom.

U čemu se koristi preopterećenje metoda?

Kad ne želite proglasiti više od jedne metode za sličnu vrstu metode za slične zadatke koji se moraju izvoditi , a istu metodu želite koristiti na različite načine. Na primjer, različiti ulazi, različit redoslijed, različit broj ulaza za iste metode, trebali biste koristiti preopterećenje metoda.

Uzmimo primjer iz stvarnog života. Kodiramo kalkulator u kojem se daje kod za zbirni dio kalkulatora. Sve brojeve koje korisnik upisuje treba dodati jedni drugima i vratiti zbroj svih unesenih brojeva.

Postoji ograničenje. Korisnici ne mogu dodati više od tri broja u jednom potezu.

Evo jednostavnih koraka:

  1. Deklarirajte metodu koja bi trebala zbrojiti sve brojeve prenesene u parametrima
  2. Preopterećenje metode vršilo bi se brojem prošlih parametara.
  3. Metoda bi trebala vratiti zbroj svih unesenih brojeva.

Sintaksa

Ovdje je sintaksa preopterećenja metode.

//declare the parameters in method
public void method1 (parameter1, parameter2)
(
//some statement
)
public void method1(parameter2, parameter1)
(
//some statement to be executed
)
//in main method pass the parameters while declaring these methods
public static void Main(Strings() args)
(
class object=new class();
object.method(2, 3) //value of parameter
object.method(3, 2) //value of parameter by changing the order
)
)

Primjeri preopterećenja metoda

Preopterećenje metode u C # može se izmijeniti dolje navedenim stvarima.

  1. Možete promijeniti broj parametara koji su prošli u metodi
  2. Možete promijeniti vrstu parametara poslanih u metodi
  3. Možete promijeniti redoslijed parametara prosljeđenih u metodi.

Ako se istom tipu potpisa i parametara prenesu istim postupkom, dobit ćete pogrešku u sastavljanju. Potpis bi trebao biti drugačiji ako se koristi značajka polimorfizma ili pokušava preopteretiti metodu u C #

Uzmimo primjer svakog.

1. Promjena broja parametara

using System;
public class methodOverloadfirst
(
//declaring two integers x and y.
public int sum(int x, int y)
(
int result=x+y;
return result;
)
//Let's add three integers in same method
public int sum(int x, int y, int z)
(
int result=x+y+z;
return result;
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
int result1=obj.sum(2, 3);
Console.WriteLine("The Sum of the two integer value is : " + result1);
int result2=obj.sum(2, 3, 4);
Console.WriteLine("The Sum of the three integer value is : " + result2);
)
)

Izlaz:

2. Promjena Tipova podataka parametara

// Naš program za prikaz funkcije preopterećenja metode
// Ovdje ćemo promijeniti vrstu podataka parametara.

using System;
public class methodOverloadfirst
(
//declaring two integers x and y.
public int sum(int x, int y)
(
int result=x+y;
return result;
)
//Let's add three doubles in same method
public double sum(double x, double y, double z)
(
double result=x+y+z;
return result;
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
int result1=obj.sum(2, 3);
Console.WriteLine("The Sum of the two integer value is : " + result1);
double result2=obj.sum(2.1, 3.2, 4.5);
Console.WriteLine("The Sum of the three double value is : " + result2);
)
)

Izlaz:

3. Promjena Tipova podataka parametara.

// Naš program za prikaz funkcije preopterećenja metode
// Ovdje ćemo promijeniti vrstu podataka parametara.

using System;
class methodOverloadfirst
(
//declaring one integer and one String
public void displayinfo(string fname, int empID)(
Console.WriteLine("Your name is: " + fname + ", " + "Your Employee ID is: " + empID);
)
//Let's change the order of the parameters
public void displayinfo(int empID, string fname)
(
Console.WriteLine("Your Employee ID is: " + empID + ", " + "Your name is: " + fname);
)
//Declare main method
public static void Main(String() args)
(
methodOverloadfirst obj=new methodOverloadfirst();
obj.displayinfo("Kumar", 121);
obj.displayinfo("Anand", 123);
)
)

Izlaz:

Zaključak

Preopterećenje metoda nevjerojatna je značajka koncepta temeljenog na OOP-u i mogla bi vas spasiti od puno gnjavaže ako ste programer. Preopterećenje metoda jedno je od svojstava polimorfizma. Ako se pravilno koristi, moglo bi vas spriječiti da prijavite više od jedne metode i izjavite je svaki put za sličan zadatak.

Tijekom korištenja ove značajke je vrsta potpisa. To bi trebalo biti drugačije svaki put kada se koristi metoda ili nekoliko parametara i redoslijeda po parametrima ili vrsti parametra kao što je prikazano gore u primjerima.

Preporučeni članci

Ovo je vodič za preopterećenje metode u C #. Ovdje smo raspravljali o upotrebi preopterećenja metoda primjerima i izlazima. Možete pogledati i sljedeći članak kako biste saznali više -

  1. Destruktor u C #
  2. Preopterećenje u C #
  3. C # sastavljači
  4. Operator C # ILI
  5. Polimorfizam u Javi
  6. Preopterećenje u Javi
  7. C ++ Vrste podataka
  8. Python preopterećenje
  9. Preopterećenje i preglasavanje u C #
  10. Destruktor u PHP-u | Primjeri

Kategorija: