Sobes.tech
Back to questions
Middle
4

Как можно создать собственные типы на основе структур в Go?

Companies where asked
VKVK

Answer from AI

sobes.tech AI

В Go можно создавать собственные типы на основе структур с помощью объявления нового типа, который использует структуру как базу. Это позволяет добавлять методы к новому типу и использовать его как отдельный тип данных.

Пример:

package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

// Создаем новый тип Employee на основе Person

type Employee Person

func (e Employee) Greet() {
    fmt.Printf("Hello, my name is %s and I am %d years old.\n", e.Name, e.Age)
}

func main() {
    emp := Employee{Name: "Ivan", Age: 30}
    emp.Greet()
}

В этом примере Employee — новый тип, основанный на структуре Person. Мы можем добавлять методы к Employee, не изменяя исходную структуру.