- Сообщения
- 2.141
- Реакции
- 2.536
сем привет! Я хочу вам показать как в C# осуществить перегрузку методов. Собственно в этом нет ни чего сложного и сверхъестественного но это очень удобно. Смысл перегрузки заключается в объявлении методов в пределах одного класса с одинаковыми именами. Тут надо знать вот что: Компилятор без ошибок перегрузит методы при следующих условиях 1) Типы параметров должны отличаться или количество параметров должно различаться Я покажу вам все на простом примере: Предположим нам нужен метод который будет возвращать нам абсолютное значение Но мы заведомо и не знаем какой тип данных мы будем ему передавать вот тут то и приходит на помощь перегрузка. Назовем его _abs
Вот код класса:
Код Program.cs:
Как вы можете заметить тут все предельно просто.
Вот код класса:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Overload
{
class OverLoad
{
public int _abs(int value)
{
if (value < 0)
{
value = value * (-1);
}
return value;
}
public double _abs(double value)
{
if (value < 0)
{
value = value * (-1);
}
return value;
}
public long _abs(long value)
{
if (value < 0)
{
value = value * (-1);
}
return value;
}
}
}
Код Program.cs:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Overload
{
class Program
{
static void Main(string[] args)
{
OverLoad over = new OverLoad();
Console.WriteLine("" + over._abs(-10.43523));
Console.ReadKey();
}
}
}
Как вы можете заметить тут все предельно просто.