Junior — Middle
Milyen szerepet tölt be a szerkezet az objektumorientált programozás fogalmában?
sobes.tech MI
Válasz az MI-től
A Go nyelvben a struktúra (struct) egy felhasználó által definiált adattípus, amely több, különböző típusú mezőt egyesít egy egységes entitásba. Az objektumorientált programozás kontextusában a struktúra egy objektumként működik, lehetővé téve valódi entitások modellezését azok tulajdonságaival.
Bár a Go nem támogatja a klasszikus értelemben vett osztályokat és öröklődést, a struktúrák lehetővé teszik:
- Az adatok (mezők) inkapszulációját.
- Metódusok definiálását a struktúrákhoz, amelyek viselkedést biztosítanak.
- Kompozíció használatát a kód újrafelhasználására az öröklés helyett.
Példa egy metódussal ellátott struktúrára:
package main
import "fmt"
type Person struct {
Name string
Age int
}
func (p Person) Greet() {
fmt.Printf("Szia, a nevem %s és %d éves vagyok.\n", p.Name, p.Age)
}
func main() {
person := Person{Name: "Ivan", Age: 30}
person.Greet()
}
Így a struktúra a Go-ban alapvető építőeleme az állapottal és viselkedéssel rendelkező objektumok létrehozásának.