az utolsó cikkben az OOPs fogalmakat tárgyaltuk. Ha még nem ellenőrizte, nagyon ajánlom, hogy olvassa el, hogy alapvető áttekintést kapjon az összes objektumorientált programozási koncepcióról. Ebben az útmutatóban az OOPs négy fontos jellemzőjét fogjuk megvitatni a valós élet példái segítségével.
objektumorientált megközelítés: a bevezetés
Java egy objektumorientált nyelv, mivel az objektumorientált modell implementálására szolgál., Ezek közé tartozik az absztrakció, a kapszulázás, az öröklés és a polimorfizmus.a
OOPS egy olyan alkalmazás kifejlesztéséről szól, amely az adatok köré épül, azaz olyan objektumokról, amelyek a saját tulajdonságaikhoz és a lehetséges műveletekhez való hozzáférést biztosítják.
absztrakció
az OOPs egyik legalapvetőbb fogalma az absztrakció. Az absztrakció olyan folyamat, amelyben csak “releváns” adatokat jelenít meg, valamint “elrejti” az objektum felesleges részleteit a felhasználótól., Például, amikor be az Amazon számla online, adja meg a user_id meg jelszót, majd nyomja meg a belépés, mi történik, ha megnyomja a bejelentkezési, hogy a bemeneti adatok küldött amazon szerver, hogy ez lesz ellenőrzött, minden oda van, távol a te.
az absztrakció másik példája: egy autó önmagában egy jól definiált objektum, amely több más kisebb objektumból áll, mint például egy hajtómű, kormányszerkezet, motor, amelyek ismét saját alrendszerekkel rendelkeznek., De az emberek számára az autó egyetlen objektum, amelyet alrendszerei segítségével lehet kezelni, még akkor is, ha belső részleteik ismeretlenek.
kapszulázás
Ez a bejegyzés a kapszulázás elméleti magyarázatát tartalmazza valós példákkal. Részletes magyarázatot ebben a témában a java programok lásd encapsulation java példával.
a kapszulázás:
- az adatokat a manipuláló kóddal köti össze.
- az adatokat és a kódot biztonságban tartja a külső interferenciától
az autó szervokormány-mechanizmusának példáját nézve., Az autó szervokormánya összetett rendszer, amely belsőleg sok alkatrészt szorosan összeilleszt, szinkronban működnek, hogy az autót a kívánt irányba fordítsák. Még a motor által a kormánykerékhez szállított energiát is vezérli. De a külvilág számára csak egy felület áll rendelkezésre, a komplexitás többi része rejtve van. Ezenkívül a kormányegység önmagában is teljes és független. Ez nem befolyásolja bármely más mechanizmus működését.
Hasonlóképpen, a kódolásra ugyanaz a koncepció alkalmazható., A kapszulázott kódnak a következő jellemzőkkel kell rendelkeznie:
- mindenki tudja, hogyan érheti el.
- könnyen használható, függetlenül a végrehajtás részleteit.
- nem szabad semmilyen mellékhatása a kódot, hogy a többi alkalmazás.
a kapszulázás lényege, hogy az osztályokat elkülönítve kell tartani, és meg kell akadályozni, hogy szorosan összekapcsolódjanak egymással.
a kapszulázás egyik példája a java osztály.util.Hashtable. A felhasználó csak azt tudja, hogy az adatokat kulcs/érték pár formájában tudja tárolni egy Hashtable-ben, és hogy ezeket az adatokat különféle módon tudja letölteni., De a tényleges megvalósítás, mint, hogyan és hol tárolják ezeket az adatokat, el van rejtve a felhasználó elől. A felhasználó egyszerűen használhatja a Hashtable-t bárhol, ahol kulcs/érték párokat szeretne tárolni anélkül, hogy zavarná annak végrehajtását.
öröklés
Ez a bejegyzés az öröklés elméleti magyarázatát valós példákkal látja el. Részletes magyarázatot ebben a témában a java programok lásd öröklés példákkal, típusú öröklés java.
- az öröklés az a mechanizmus, amellyel egy objektum megszerzi egy másik objektum néhány/minden tulajdonságát.,
- támogatja a hierarchikus osztályozás fogalmát.
például: Autó négy wheeler jármű, tehát feltételezzük, hogy van egy osztály FourWheeler egy részét osztály neve Car
. Itt az autó megszerzi a FourWheeler
osztály tulajdonságait. Más besorolások lehetnek dzsip, tempo, van stb. A FourWheeler meghatározza a négy kerékkel rendelkező járművek osztályát, valamint a motor teljesítményének, teherbírásának stb., Az autó (amelyet alosztálynak neveznek) ezeket a tulajdonságokat a FourWheeler-től vásárolja meg, és rendelkezik néhány speciális tulajdonsággal, amelyek különböznek a FourWheeler egyéb osztályozásaitól, például luxus, kényelem, alak, méret, használat stb.
egy autónak további besorolása lehet, például nyitott autó, kis autó, nagy autó stb., amely mind a négykerekű, mind az autó tulajdonságait megszerzi, de még mindig vannak bizonyos tulajdonságai. Így a hierarchia szintje bármilyen szintre kiterjeszthető.
A Java Swing és Awt osztályok jelentik az öröklés legjobb példáit.,
polimorfizmus
Ez a bejegyzés a polimorfizmus elméleti magyarázatát mutatja be valós példákkal. A java programokkal kapcsolatos részletes magyarázatért olvassa el a polimorfizmust a java-ban és a runtime & fordítási idő polimorfizmus.
- a polimorfizmus azt jelenti, hogy az objektumokat eltérő módon dolgozzák fel adattípusuk alapján.
- más szóval azt jelenti, hogy egy módszer több végrehajtással, egy bizonyos cselekvési osztályhoz. És melyik végrehajtást kell használni, futási időben döntenek a helyzettől függően (azaz,, az objektum adattípusa)
- ez egy generikus interfész megtervezésével valósítható meg, amely Generikus módszereket biztosít egy adott cselekvési osztály számára, és több osztály is lehet, amelyek ezen Generikus módszerek megvalósítását biztosítják.
lehetővé teszi számunkra, hogy nézd meg ugyanazt a példát egy autó. Egy autó sebességváltó rendszerrel rendelkezik. Négy első és egy hátrameneti fokozattal rendelkezik. Ha a motor felgyorsul, akkor attól függően, hogy melyik fokozat van bekapcsolva, különböző mennyiségű energiát és mozgást szállítanak az autóba., A művelet ugyanaz, mint a fogaskerék, de a fogaskerék típusa alapján a művelet másképp viselkedik, vagy azt mondhatjuk, hogy sok formát mutat (a polimorfizmus sok formát jelent)
a polimorfizmus lehet statikus és dinamikus mindkettő. A módszer túlterhelése statikus polimorfizmus, míg a módszer kényszerítése dinamikus polimorfizmus.
- az egyszerű szavakkal történő túlterhelés azt jelenti, hogy egynél több módszer ugyanazt a metódusnevet jelenti, amely eltérően viselkedik a metódus hívásakor átadott argumentumok alapján., Ezt statikusnak nevezik, mert a
- összeállításakor eldöntendő módszer azt jelenti, hogy egy származtatott osztály a szuperosztályának egy módszerét hajtja végre. A felülbírált metódusra való hívás futásidőben megoldódik, így runtime polimorfizmusnak nevezik
Vélemény, hozzászólás?