Sobes.tech
Junior — Middle

Este posibil să extindeți funcționalitatea unei clase adăugând noi proprietăți sau câmpuri prin intermediul interfețelor?

sobes.tech AI

Răspuns de la AI

În Go, interfețele definesc un set de metode pe care un tip trebuie să le implementeze, dar nu pot conține proprietăți sau câmpuri. Prin urmare, nu se poate extinde funcționalitatea unei clase (tip) adăugând noi proprietăți prin intermediul unei interfețe. Interfețele servesc pentru a descrie comportamentul, nu structura datelor.

Exemplu de interfață în Go:

type Reader interface {
    Read(p []byte) (n int, err error)
}

Dacă doriți să adăugați noi câmpuri, faceți acest lucru printr-o structură, nu printr-o interfață.