Junior — Middle
Ինչպես կառավարել իրավիճակները, երբ ծրագրավորման լեզվի ինտերֆեյսը չի պարունակում մեթոդներ կամ հատկություններ?
sobes.tech AI
Պատասխան AI-ից
Go-ում մեթոդներ չունեցող ինտերֆեյսը կոչվում է դատարկ ինտերֆեյս interface{}։ Այն կարող է պարունակել ցանկացած տիպի արժեքներ, քանի որ բոլոր տիպերը իրականացնում են դատարկ ինտերֆեյսը։
Օգտագործման օրինակ՝
var i interface{}
i = 42
fmt.Println(i) // տպում է 42
i = "ստրինգ"
fmt.Println(i) // տպում է ստրինգ
Եթե ինտերֆեյսը չի պարունակում մեթոդներ, այն ծառայում է ցանկացած արժեք պահելու համար, բայց աշխատելու համար կոնկրետ տիպի հետ, անհրաժեշտ է օգտագործել տիպի հաստատում (type assertion) կամ տիպի փոխարկում (type switch): Սա ապահովում է անվտանգ կերպով անհրաժեշտ տիպի արժեքը հանելու հնարավորությունը։