Sobes.tech
Junior — Middle

Hogyan kezeljük az olyan helyzeteket, amikor a programozási nyelv interfésze nem tartalmaz metódusokat vagy tulajdonságokat?

sobes.tech MI

Válasz az MI-től

Go-ban a metódus nélküli interfész az úgynevezett üres interfész interface{}. Bármilyen típusú értéket tartalmazhat, mivel minden típus megvalósítja az üres interfészt.

Használati példa:

var i interface{}
 i = 42
fmt.Println(i) // kiírja 42

i = "szöveg"
fmt.Println(i) // kiírja a szöveget

Ha az interfész nem tartalmaz metódusokat, akkor bármilyen érték tárolására szolgál, de a konkrét típuson való munkához típusállítást (type assertion) vagy típusváltást (type switch) kell használni. Ez lehetővé teszi a kívánt típus értékének biztonságos kivonását az üres interfészből.