Тип Object
Тип Object - общий тип непустого объекта.
Строка, число, список и экземпляр любого класса
подходят под Object. Значение null
к этому типу не относится: его тип - Null.
Пока значение лежит в переменной типа Object,
видны только общие члены вроде runtimeType.
Методы строки или числа нужно вызывать
после приведения оператором as.
Если допустимо и отсутствие значения,
используют тип Object?.
Синтаксис
Object name = 'abcde';
Object name = 5;
Пример
Давайте положим в одну переменную сначала строку, а затем число, и посмотрим фактический тип:
void main()
{
Object res = 'abcde';
print(res.runtimeType);
res = 5;
print(res.runtimeType);
}
Результат выполнения кода:
String
int
Пример
Давайте приведём значение к String
и прочитаем длину строки:
void main()
{
Object res = 'abcde';
String text = res as String;
print(text.length);
}
Результат выполнения кода:
5
Пример
Давайте проверим, что число является объектом,
а null в типе Object? - нет:
void main()
{
Object res = 5;
Object? empty = null;
print(res is Object);
print(empty is Object);
}
Результат выполнения кода:
true
false