Durante uno dei miei studi sulle complessità di C #, mi sono imbattuto in un passaggio interessante riguardante l'implementazione esplicita dell'interfaccia.
While this syntax is quite helpful when you need to resolve name clashes,
you can use explicit interface implementation simply to hide more "advanced"
members from the object level.
La differenza tra consentire l'uso object.method()
o la necessità di lanciare ((Interface)object).method()
sembra una sorta di offuscamento mediocre ai miei occhi inesperti. Il testo ha osservato che questo si nasconderà il metodo da Intellisense a livello di oggetto, ma perché te ne vuole fare che, se non era necessario per evitare conflitti di nomi?