РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1486 of 1593 menu

Метод reflect.Type.Name

Метод reflect.Type.Name возвращает имя типа, представленного объектом reflect.Type. Для именованных типов (например, определенных через type) метод возвращает строку с именем типа. Для встроенных типов (например, int, string) метод возвращает строковое представление типа. Для анонимных типов (например, слайсов, мапов, каналов) метод возвращает пустую строку.

Синтаксис

t.Name()

Метод не принимает параметров и возвращает строку с именем типа.

Пример

Давайте получим имя типа для пользовательской структуры:

package main import ( "fmt" "reflect" ) type Person struct { Name string Age int } func main() { var p Person t := reflect.TypeOf(p) res := t.Name() fmt.Println(res) }

Результат выполнения кода:

"Person"

Пример

Получим имя типа для встроенного типа string:

package main import ( "fmt" "reflect" ) func main() { var s string t := reflect.TypeOf(s) res := t.Name() fmt.Println(res) }

Результат выполнения кода:

"string"

Пример

Проверим, что возвращает метод для анонимного типа:

package main import ( "fmt" "reflect" ) func main() { slice := []int{1, 2, 3, 4, 5} t := reflect.TypeOf(slice) res := t.Name() fmt.Println(res) }

Результат выполнения кода:

""

Для слайса метод возвращает пустую строку, так как это анонимный тип.

Пример

Сравним результаты методов Name и Kind:

package main import ( "fmt" "reflect" ) type User struct { ID int Name string } func main() { var u User t := reflect.TypeOf(u) name := t.Name() kind := t.Kind() fmt.Println("Name:", name) fmt.Println("Kind:", kind) }

Результат выполнения кода:

"Name: User" "Kind: struct"

Метод Name возвращает имя типа, а метод Kind возвращает базовый вид типа.

Смотрите также

  • метод reflect.Type.Kind,
    который возвращает базовый вид типа
  • метод reflect.Type.String,
    который возвращает строковое представление типа
  • метод reflect.Type.PkgPath,
    который возвращает путь пакета для типа
  • функцию reflect.TypeOf,
    которая возвращает тип значения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить