Tartalomjegyzék:
- Meghatározás - Mit jelent az interfész megvalósítása?
- A Techopedia magyarázza az interfész megvalósítását
Meghatározás - Mit jelent az interfész megvalósítása?
Az interfész megvalósítása a C #-ben egy interfész öröklését jelenti egy olyan konstrukció vagy osztály által, amely a felületen deklarált tagok számára biztosítja a funkcionalitást. A megvalósított felület tagjai tartalmazhatnak módszereket, tulajdonságokat, indexelőket és eseményeket.
Általánosságban elmondható, hogy egy interfész olyan szerződést jelent, amelyet be kell tartani egy osztálynak vagy struktúrának, amely az interfészben meghatározott összes tagot megvalósítja. Az interfész megvalósításának fő előnyei a rugalmasság, az alacsony csatolás, a nagy kohézió és a polimorf viselkedés.
A C #-ban az interfész megvalósítása lehetővé teszi az osztály számára, hogy több interfész helyett több osztálytól örököljön, így egynél több viselkedés örökölhető több interfészen keresztül, amelyek csak a módszer aláírásait osztják meg. Az interfész tulajdonságként megvalósítható annak meghatározására, hogy a tulajdonság írható-író, csak olvasható vagy írható-e. Egy interfész kifejezetten megvalósítható egy tag elrejtéséhez és helyettesítéséhez. A Java-val ellentétben a C # explicit felületének megvalósítása lehetővé teszi több interfész azonos módszernevével és aláírásaival történő végrehajtását, különféle névkonfliktusok nélküli megvalósításokkal, és az objektum aktuális leadása alapján eltérő eredményt biztosít.
A Techopedia magyarázza az interfész megvalósítását
Az absztrakt osztályhoz hasonlóan az interfész nem biztosít alapértelmezett megvalósítást. Az interfész egy tagját megvalósító osztály vagy struktúra tagjának nyilvánosnak, nem statikusnak kell lennie, és ugyanazzal a névvel és aláírással kell rendelkeznie, mint a felületen.
Például egy IAccount felületet egy osztály, a SavingAccount valósíthatja meg, amely az IAccount tagjait valósítja meg, beleértve a BalanceAmount, a DateOfOpening stb. Tulajdonságait és módszereit, mint például a PrintStatement, a CalculateInterest stb.
Az interfész megvalósítása implicit lehet, ha egy származtatott osztály alaposztálya már megvalósítja a felületet. Az alap interfészeket nem kell kifejezetten meghatározni a származtatott osztály alaposztály-listájában. Ezenkívül a származtatott osztály megváltoztathatja az alap osztályban már definiált interfész viselkedését azáltal, hogy felülbírálja a származtatott osztály virtuális tagjait.
Az interfész megvalósítása kifejezett, ha két vagy több interfész tagjai azonos névvel, azonos aláírással rendelkeznek, de két különböző funkciót hajtanak végre, egy osztály vagy szerkezet örököl, amely minden tagot kifejezetten megvalósít. Egy ilyen tagot a felület nevével és egy periódussal neveznek el, és csak a felület egy példányán keresztül érhetők el. Az implicit módszerekkel ellentétben az explicit módszerek nem lehetnek absztrakt vagy virtuálisak.