Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 20706|Odpověď: 0

[Zdroj] C# Rozdíl mezi abstraktními třídami a rozhraními

[Kopírovat odkaz]
Zveřejněno 21.06.2016 11:34:25 | | |
Abstraktní třídy a rozhraní
    Podobnosti:
    (1) může být děděna
    (2) nelze instancovat
    (3) může obsahovat deklarace metod
    (4) Odvozená třída musí implementovat neimplementovanou metodu
    Kategorie:
    (1) Abstraktní základní třídy mohou definovat pole, vlastnosti a implementace metod. Rozhraní mohou definovat pouze atributy, indexery, události a deklarace metod a nemohou obsahovat pole.
    (2) Abstraktní třída je neúplná třída, která vyžaduje další zpřesnění, zatímco rozhraní je behaviorální norma. Vlastní rozhraní Microsoftu vždy obsahují schopné pole, které dokazuje, že jsou vyjádřením "Já to zvládnu..." ”
    (3) Rozhraní lze implementovat vícekrát a abstraktní třídy může zdědit pouze jedna osoba
    (4) Abstraktní třídy jsou více definovány mezi řadou úzce souvisejících tříd, zatímco většina rozhraní jsou volně související třídy, které všechny implementují určitou funkci
    (5) Abstraktní třídy jsou pojmy abstrahované ze série souvisejících objektů, takže odrážejí vnitřní společné rysy věcí; Rozhraní je funkční konvence definovaná tak, aby vyhovovala externím voláním, takže odráží vnější charakteristiky věcí
    (6) Rozhraní v podstatě nemá žádné specifické vlastnosti dědičnosti, pouze slibuje metody, které lze volat   
    (7) Rozhraní lze použít k podpoře callbacků, ale dědičnost tuto funkci nemá
    (8) Specifické metody implementované abstraktními třídami jsou ve výchozím nastavení virtuální, ale rozhraní v třídě, která rozhraní implementuje, jsou ve výchozím nastavení nevirtuální, samozřejmě je můžete také deklarovat jako virtuální
    (9) Pokud abstraktní třída implementuje rozhraní, lze metodu v rozhraní namapovat na abstraktní třídu jako abstraktní metodu bez nutnosti její implementace a metoda v rozhraní může být implementována v podtřídě abstraktní třídy








Předchozí:Došlo k chybě systému 5. Přístup je zamítnut.
Další:Poskytovatel 'Microsoft.Jet.OleDb.4.0' není registrován na lokálním počítači.
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com