OOPs v Javě: zapouzdření, dědičnost, polymorfismus, abstrakce

posted in: Articles | 0

v posledním článku jsme diskutovali Oops koncepty. Pokud jste to ještě nezkontrolovali, vřele vám doporučuji přečíst si to, abyste měli základní přehled o všech objektově orientovaných programovacích konceptech. V této příručce Budeme diskutovat o čtyřech důležitých rysech OOPs pomocí příkladů skutečného života.

Objektově Orientovaný Přístup : Úvod

Java je objektově orientovaný jazyk, protože poskytuje funkce implementovat objektově orientovaný model., Tyto vlastnosti zahrnují abstrakci, zapouzdření, dědičnost a polymorfismus.

OOPS je o vývoji aplikace kolem jejích dat, tj. objektů, které poskytují přístup k jejich vlastnostem a možným operacím svým vlastním způsobem.

abstrakce

jedním z nejzákladnějších pojmů OOPs je abstrakce. Abstrakce je proces, ve kterém zobrazujete pouze „relevantní“ data a „skrýváte“ zbytečné detaily objektu od uživatele., Například, když se přihlásíte ke svému účtu Amazon, on-line, můžete zadat váš user_id a heslo a stiskněte tlačítko přihlásit, co se stane, když stiskněte tlačítko přihlásit, jak vstupní data odeslána na server amazon, jak to dostane ověřit všechno je získávána od vás.

Další příklad abstrakce: auto samo o sobě je dobře definovaný objekt, který se skládá z několika dalších menších objektů, jako převodový systém, mechanismus řízení motoru, které jsou opět mají své vlastní subsystémy., Ale pro člověka auto je jeden jediný objekt, který může být řízen pomocí jeho subsystémů, i když jejich vnitřní detaily nejsou známy.

zapouzdření

tento příspěvek poskytuje teoretické vysvětlení zapouzdření s příklady reálného života. Podrobné vysvětlení k tomuto tématu pomocí programů java naleznete v příkladu zapouzdření v Javě.

zapouzdření je:

  • vazba dat s kódem, který s ním manipuluje.
  • uchovává data a kód v bezpečí před vnějším rušením

při pohledu na příklad mechanismu posilovače řízení automobilu., Posilovač řízení automobilu je složitý systém, který má vnitřně spoustu součástí pevně spojených dohromady, pracují synchronně, aby otočili auto v požadovaném směru. Dokonce ovládá sílu dodávanou motorem na volant. Ale pro vnější svět je k dispozici pouze jedno rozhraní a zbytek složitosti je skrytý. Kromě toho je řídicí jednotka sama o sobě úplná a nezávislá. Nemá vliv na fungování jakéhokoli jiného mechanismu.

podobně lze na kód aplikovat stejný koncept zapouzdření., Zapouzdřený kód by měl mít následující vlastnosti:

  • každý ví, jak k němu přistupovat.
  • lze snadno použít bez ohledu na detaily implementace.
  • na zbytek aplikace by neměly být žádné vedlejší účinky kódu.

myšlenkou zapouzdření je udržet třídy oddělené a zabránit jim v těsném spojení.

příkladem zapouzdření je třída java.utile.Hashtable. Uživatel pouze ví, že může ukládat data ve formě dvojice klíč/hodnota v Hashtable a že může načíst tato data různými způsoby., Skutečná implementace, jako je, jak a kde jsou tato data skutečně uložena, je však před uživatelem skryta. Uživatel může jednoduše použít Hashtable všude tam, kde chce ukládat dvojice klíčů / hodnot, aniž by se obtěžoval jeho implementací.

dědičnost

tento příspěvek poskytuje teoretické vysvětlení dědičnosti s příklady reálného života. Pro podrobné vysvětlení tohoto tématu s java programy odkazují dědičnost s příklady a typy dědičnosti v Javě.

  • dědičnost je mechanismus, kterým objekt získává některé / všechny vlastnosti jiného objektu.,
  • podporuje koncept hierarchické klasifikace.

Pro příklad: Auto je dvounápravové vozidlo, takže předpokládejme, že máme třídu FourWheeler a sub třída je pojmenována Car. Zde Auto získává vlastnosti třídy FourWheeler. Jiné klasifikace by mohly být džíp, tempo, dodávka atd. FourWheeler definuje třídu vozidel, která mají čtyři kola, a specifický rozsah výkonu motoru, nosnost atd., Auto (označována jako sub-class) získá tyto vlastnosti z FourWheeler, a má některé specifické vlastnosti, které jsou odlišné od jiných klasifikací FourWheeler, jako je luxus, pohodlí, tvar, velikost, použití atd.

auto může mít další klasifikace, jako otevřené auto, malé auto, velké auto atd, které získají vlastnosti z obou dvounápravové a Auto, ale stále mají některé specifické vlastnosti. Tímto způsobem lze úroveň hierarchie rozšířit na libovolnou úroveň.

třídy Java Swing a Awt představují nejlepší příklady dědičnosti.,

polymorfismus

tento příspěvek poskytuje teoretické vysvětlení polymorfismu s příklady reálného života. Pro podrobné vysvětlení tohoto tématu s java programy viz polymorfismus v Javě a runtime & kompilovat čas polymorfismus.

  • polymorfismus znamená zpracovávat objekty odlišně na základě jejich datového typu.
  • jinými slovy to znamená jednu metodu s vícenásobnou implementací pro určitou třídu akcí. A o tom, která implementace má být použita, se rozhoduje za běhu v závislosti na situaci (tj.,, datový typ objektu)
  • může být provedena navrhnout obecné rozhraní, které poskytuje obecné metody pro určitou třídu akce, a tam může být několik tříd, které nabízí provádění těchto obecných metod.

nám umožňuje podívat se na stejný příklad automobilu. Auto má převodový systém. Má čtyři přední rychlostní stupně a jeden zadní rychlostní stupeň. Když je motor zrychlen, pak v závislosti na tom, který převodový stupeň je zapojen, je do vozu dodán jiný výkon a pohyb., Akce je stejná, ale na základě typu ozubeného kola se akce chová jinak, nebo můžete říci, že ukazuje mnoho forem (polymorfismus znamená mnoho forem)

polymorfismus může být statický i dynamický. Přetížení metodou je statický polymorfismus, zatímco převažující metodou je dynamický polymorfismus.

  • přetížení jednoduchými slovy znamená více než jednu metodu se stejným názvem metody, která se chová odlišně na základě argumentů předaných při volání metody., Tento tzv. statická elektřina, která metoda bude vyvolána, je rozhodnuto v době kompilace
  • Převažující znamená, že odvozené třídy je provádění způsobu jeho super třídy. Metoda call to overriden je řešena za běhu, tzv. runtime polymorfismus

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *