Я использовал ToString()
скромно в прошлом, и я нашел его очень полезным во многих случаях. Тем не менее, мое использование этого метода вряд ли оправдало бы использование этого метода в не что иное, как System.Object
. Моя дикая догадка заключается в том, что в какой-то момент во время проведенной работы и встреч, проведенных с первоначальным дизайном платформы .NET, было решено, что необходимо или, по крайней мере, чрезвычайно полезно, включить ToString()
метод, который будет реализован всем в платформе .NET.
Кто-нибудь знает, каковы были точные причины? Я не хватает тонны ситуаций, когда ToString()
оказывается достаточно полезным, чтобы быть частью System.Object
? Каковы были исходные причины для ToString()
?
Спасибо большое!
PS - Опять же: я не спрашиваю метод или подразумеваю, что это не полезно, мне просто интересно узнать, что делает его полезным для размещения в System.Object
.
Боковое примечание. Представьте себе следующее:
AnyDotNetNativeClass someInitialObject = new AnyDotNetNativeClass([some constructor parameters]);
AnyDotNetNativeClass initialObjectFullCopy = AnyDotNetNativeClass.FromString(someInitialObject.ToString());
Разве это не было бы круто?
ИЗМЕНИТЬ (1):
(A). На основании некоторых ответов кажется, что языки .NET унаследовали это от Java. Итак, я добавляю "Java" к теме и к тегам. Если кто-то знает причины, по которым это было реализовано на Java, прошу пролить некоторый свет!
(B) - Статический гипотетический FromString
против Сериализации: конечно, но это совсем другая история, верно?