Основне меню  

   

Реклама  

Скачуйте відеуроки для створення сайту за допомогою SMS Joomla 

реклама

 

 

   

Ми в Facebook  

Калькулятор расчета пеноблоков смотрите на этом ресурсе
Все о каркасном доме можно найти здесь http://stroidom-shop.ru
Как снять комнату в коммунальной квартире смотрите тут comintour.net
   

Реклама в мережі  

   

Статистика  

Користувачі
1
Статті
184
Перегляди статей
728178
   

Пошук по сайту  

   

Ми знаходимось тут  

   

Посібник Delphi  

ДОСТУПНИЙ ВИКЛАД,

ЦІКАВІ ПРИКЛАДИ, ВИХІДНІ КОДИ.

ЦІНА ДИСКА З МАТЕРІАЛАМИ - 500 грн. 

Якщо ваша карта обслуговується ПриватБанком тоді переведіть потрібну суму через Приват24 на карту    5168 7573 0556 9925 або натисніть на посилання "Перейти до оплати", щоб здійснити миттєвий платіж без комісії. Перейти до оплати!

 Звертайтесь за адресою еmail:kuzbyt@ukr.net

 
   

Посібник по C#  

 Вивчаємо сучасну мову  програмування C# 7.0

ПРОГРАМУЄМО в VISUAL STUDIO 2017

ЦІНА ДИСКА З МАТЕРІАЛАМИ - 1000 грн. 

Якщо ваша карта обслуговується ПриватБанком тоді переведіть потрібну суму через Приват24 на карту    5168 7573 0556 9925 або натисніть на посилання "Перейти до оплати", щоб здійснити миттєвий платіж без комісії. Перейти до оплати!

 Звертайтесь за адресою еmail:kuzbyt@ukr.net

 
   

Випадкове фото  

   

Наш відеоканал  

   

Відвідування сайту  

Яндекс.Метрика

 

   

Відеокурс по С++  

   

Рекомендуємо:  

   

На цьому уроці ми розглянемо з вами ще один спосіб реалізації поліморфізму в Сі-шарп - перевантаження методів.

Перевантаження методів - це оголошення в класі методів з однаковими іменами при цьому з різними параметрами.

Маючи якийсь метод, щоб його перевантажити, інший метод з таким же ім'ям повинен відрізнятися від нього кількістю параметрів та / або типами параметрів. Відмінності тільки типами повертаються значень методами недостатньо для перевантаження, але якщо методи відрізняються параметрами, тоді перенавантажувані методи можуть мати і різні типи повертаються значень.

Приклад того, як може бути перевантажений метод:

public void SomeMethod ()

{

   // Тіло методу

}

public void SomeMethod (int a) // від першої відрізняється наявністю параметра

{

   // Тіло методу

}

public void SomeMethod (string s) // від другого відрізняється типом параметра

{

   // Тіло методу

}

public int SomeMethod (int a, int b) // від попередніх відрізняється кількістю параметрів (плюс змінено тип повернення)

{

   // Тіло методу

   return 0;

}

Приклад того, як не може бути перевантажений метод:

public void SomeMethod (int a)

{

   // Тіло методу

}

public void SomeMethod (int b) // імені параметра недостатньо

{

   // Тіло методу

}

public int SomeMethod (int a) // типу значення, що повертається недостатньо

{

   // Тіло методу

   return 0;

}

Ми з вами вже стикалися з перевантаженням методів на практиці в уроці Конструктори в Сі-шарп, коли створювали кілька конструкторів - без параметрів і з параметрами.

На практиці перевантаження методів в Сі-шарп зустрічається на кожному кроці. Наприклад, у класі для конвертації типів Convert перевантажені майже всі методи. Метод ToInt32 () може приймати параметр різного типу - bool, float, double, byte, char і т.д. Для кожного варіанту параметра методу необхідна своя реалізація конвертації відповідно, тут і використовується перевантаження методу ToInt32 (). Цей приклад дуже добре показує перевага, яку дає нам перевантаження - ми просто викликаємо метод з універсальним ім'ям ToInt32 (), не замислюючись параметр якого типу ми передаємо. Без перевантаження цей метод міг би розділитися на методи з різними іменами: FromBoolToInt32 (), FromFloatToInt32 (), FromDoubleToInt32 (), FromByteToInt32 () і т.д.

Наведу ще простий приклад перевантаження. Метод буде додавати аргументи один до одного і виводити результат (з числами це звичайне додавання, з символами об'єднання в рядок):

public static void AddAndDisplay (int a, int b)

{

   Console.WriteLine (a + b);

}

public static void AddAndDisplay (char a, char b)

{

   Console.WriteLine (a.ToString () + b.ToString ());

}

static void Main (string [] args)

{

   AddAndDisplay (5, 8); // 13

   AddAndDisplay ('C', '#'); // "C #"

   Console.ReadKey ();

}

Ми просто задаємо параметри методу, а компілятор сам вирішує, який варіант методу AddAndDisplay необхідно викликати.

Домашнє завдання

Маємо список імен. Створіть метод, який буде виводити на екран ці імена через кому. Перевантажите цей метод так, щоб можна було змінювати роздільник - замість ком між іменами будь-який символ, переданий параметром.

PS. Не забудьте поділитися з друзями цим уроком за допомогою кнопок соціальних мереж.

 

Додати коментар

Захисний код
Оновити

   

Поділіться з друзями

 
   

Сайт для перевірки своїх знань з програмування на сайті:http://www.quizful.net/test

Онлайн тести  для програмістів: https://proghub.ru/


 Розробка сайтів, інтернет-магазинів під ключ. Створення програмного забезпечення для обліку в магазинах,

гуртовнях, ведення власного бізнесу та інших. Написання дипломних та курсових робіт з програмування, баз даних.

 

Звертайтесь за адресою email:kuzbyt@ukr.net

 

 

© (C) Sambir, I.Kuzbyt