Шта је преоптерећење метода у Ц #?

Када желите да примените карактеристику полиморфизма, то се врши уз помоћ методе преоптерећења. У лаичком изразу, ако желимо да користимо једну функцију за више облика, користимо методу преоптерећења. Пошто је Ц # језик заснован на ООП-у, он у потпуности подржава полиморфизам.

Програмер може користити једну класу више пута са истим именом са различитим параметрима. Током коришћења полиморфизма, две класе или методе могу користити исти назив.

Хајде да разговарамо о различитим методама коришћења параметара у класама и методама ц #.

  1. Метод можемо преоптеретити на основу неколико прослеђених параметара. У методама се параметри требају навести као аргументи.
  2. Двије методе се не могу дефинирати истим именом с истим типом и редослиједом прослијеђених параметара. Дало би вам грешку.
  3. Иако компајлер повратну врсту не узима у обзир, двије методе се не могу декларисати истим именом, типом или потписом.

Каква је употреба метода преоптерећења?

Када не желите да изјавите више од једне методе за сличан тип методе за сличне задатке који се изводе и желите да користите исту методу на различите начине. На примјер, за различите улазе, различит редослијед, различит број улаза за исте методе, требали бисте користити преоптерећење метода.

Узмимо пример из стварног живота. Кодирамо калкулатор где вам је омогућено да кодујете збирни део калкулатора. Сви бројеви које корисник уноси треба додати једни другима и вратити зброј свих унесених бројева.

Постоји ограничење. Корисници не могу да додају више од три броја у једном потезу.

Ево следећих корака:

  1. Прогласите методу која би требала збројити све бројеве у параметрима
  2. Преоптерећење метода вршило би се бројем прошлих параметара.
  3. Метода треба да врати зброј свих унесених бројева.

Синтакса

Ево синтакса преоптерећења методе.

//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
)
)

Примери преоптерећења метода

Преоптерећење метода у Ц # може се извршити променом следећих ствари.

  1. Можете променити број параметара који су прослеђени у методи
  2. Можете променити врсту параметара прослеђених у методи
  3. Можете променити редослед параметара донетих у методи.

Ако се исти тип потписа и параметара пренесу истим методом, то ће вам дати грешку у састављању. Потпис би требао бити другачији ако користите значајку полиморфизма или покушавате преоптеретити методу у Ц #

Узмимо пример сваког.

1. Промјена броја параметара

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);
)
)

Излаз:

2. Промјена Типова података параметара

// Наш програм за приказ функције преоптерећења методе
// Овде ћемо променити врсту података.

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);
)
)

Излаз:

3. Промјена Типова података параметара.

// Наш програм за приказ функције преоптерећења методе
// Овде ћемо променити врсту података.

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);
)
)

Излаз:

Закључак

Преоптерећење метода је невероватна карактеристика концепта заснованог на ООП-у и могло би вам уштедјети пуно проблема ако сте програмер. Преоптерећење метода је једно од својстава полиморфизма. Ако се правилно користи, могло би вас спречити да декларирате више од једне методе и изјављујете је сваки пут за сличан задатак.

Док користите ову функцију врста потписа је. То би требало бити другачије сваки пут када се метода користи или по неколико параметара и редослиједа по параметрима или врсти параметра као што је приказано горе у примјерима.

Препоручени чланци

Ово је водич за преоптерећење метода у Ц #. Овде смо расправљали о употреби преоптерећења метода примерима и излазима. Такође можете погледати следећи чланак да бисте сазнали више -

  1. Деструктор у Ц #
  2. Преоптерећење у Ц #
  3. Ц # компајлери
  4. Оператор Ц # ИЛИ
  5. Полиморфизам у Јави
  6. Преоптерећење у Јави
  7. Врсте података Ц ++
  8. Питхон Оверлоадинг
  9. Преоптерећење и прегласавање у Ц #
  10. Деструктор у ПХП-у | Примери

Категорија: