Метод GetType в C#
Переменная может иметь тип object, а лежать в ней может число или объект
другого класса. Метод GetType возвращает фактический тип значения, а не тип
переменной. Если значения ещё нет, а имя типа уже написано в исходнике, берут typeof.
Метод виртуальный и sealed в Object: пользовательский код не может подменить
его для «скрытия» реального класса от рефлексии.
Положим целое в переменную object и спросим имя типа. Имя берётся у значения, хотя переменная имеет тип object:
object value = 42;
Type t = value.GetType();
Console.WriteLine(t.Name);
Для строки "atlas" выведите короткое имя фактического типа.