Загрузка данных


using System;

class Printer
{
    // 1. Простой метод с одним строковым параметром
    public void Print(string message)
    {
        Console.WriteLine(message);
    }

    // 2. Метод со строкой и необязательным параметром цвета.
    // Если цвет не указан, будет использован ConsoleColor.White.
    public void Print(string message, ConsoleColor color = ConsoleColor.White)
    {
        // Сохраняем текущий цвет консоли, чтобы вернуть его позже
        ConsoleColor currentColor = Console.ForegroundColor;

        // Устанавливаем выбранный цвет
        Console.ForegroundColor = color;
        Console.WriteLine(message);

        // Возвращаем исходный цвет (хороший тон в программировании)
        Console.ForegroundColor = currentColor;
    }
}

public class Program
{
    public static void Main()
    {
        Printer printer = new Printer();

        // 1. Вызов метода с одним аргументом. 
        // В данном случае выполнится первый метод Print.
        printer.Print("Hello, world!"); 

        // 2. Вызов метода с указанием цвета.
        // Выполнится второй метод, и текст будет желтым.
        printer.Print("Welcome to the program!", ConsoleColor.Yellow);

        // 3. А вот здесь сработает магия необязательного параметра:
        // Если мы закомментируем первый метод, то вызов printer.Print("Test") 
        // все равно бы работал, используя второй метод с белым цветом по умолчанию.
        
        Console.WriteLine("\nНажмите любую клавишу для выхода...");
        Console.ReadKey();
    }
}