У меня вопрос по следующему коду:
class CurrentDate
{
static void Main()
{
Console.WriteLine(DateTime.Now);
}
}
В документации говорится:
Записывает текстовое представление указанного массива объектов, за которым следует признак конца текущей строки, в стандартный поток вывода, используя указанную информацию о формате.
Итак, мой вопрос: почему WriteLine
знает текстовое представление объекта DateTime
? Я имею в виду, если я создам свой собственный объект из своего собственного класса, как он узнает, как преобразовать значение в текст? И даже более того, как он узнает, какова ценность? Как определить «ценность» объекта?
MyClass.toString
) для определения того, что печатать в качестве значения, когда объект отображается как одна строка. - person Superbest   schedule 24.05.2015Console.WriteLine()
неявно вызываетToString()
, поэтому для вашего собственного объекта вы должны реализовать / переопределить методToString()
. - person Jaider   schedule 25.10.2016