OOPs in Java: inkapsling, arv, polymorfism, abstraktion

posted in: Articles | 0

i den sista artikeln diskuterade vi OOPs-begrepp. Om du ännu inte har kontrollerat det, skulle jag starkt rekommendera dig att läsa det så att du har en grundläggande översikt över alla objektorienterade programmeringskoncept. I den här guiden kommer vi att diskutera fyra viktiga funktioner i OOPs med hjälp av verkliga exempel.

objektorienterad metod : En introduktion

Java är ett objektorienterat språk eftersom det ger funktioner för att implementera en objektorienterad modell., Dessa funktioner inkluderar abstraktion, inkapsling, arv och polymorfism.

OOPS handlar om att utveckla en applikation kring dess data, dvs. objekt som ger tillgång till deras egenskaper och möjliga operationer på egen väg.

abstraktion

ett av de mest grundläggande begreppen OOPs är abstraktion. Abstraktion är en process där du bara visar ”relevanta” data och ”dölja” onödiga detaljer om ett objekt från användaren., När du till exempel loggar in på ditt Amazon-konto online anger du ditt user_id och lösenord och trycker på Logga in, vad händer när du trycker på Logga in, hur inmatningsdata skickas till amazon server, hur det blir verifierat är allt abstraherat bort från dig.

ett annat exempel på abstraktion: en bil i sig är ett väldefinierat objekt, som består av flera andra mindre objekt som ett växelsystem, styrmekanism, motor, som återigen har sina egna delsystem., Men för människor bil är ett enda objekt, som kan hanteras med hjälp av dess delsystem, även om deras inre detaljer är okända.

inkapsling

det här inlägget ger den teoretiska förklaringen av inkapsling med verkliga exempel. För detaljerad förklaring om detta ämne med java-program se inkapsling i java med exempel.

inkapsling är:

  • bindning av data med koden som manipulerar den.
  • Det håller data och koden säker från yttre störningar

tittar på exemplet på en servostyrningsmekanism i en bil., Servostyrning av en bil är ett komplext system, som internt har massor av komponenter tätt kopplade ihop, de arbetar synkront för att vrida bilen i önskad riktning. Det styr även kraften som levereras av motorn till ratten. Men för den yttre världen finns det bara ett gränssnitt är tillgängligt och resten av komplexiteten är dold. Dessutom är styrenheten i sig komplett och oberoende. Det påverkar inte hur någon annan mekanism fungerar.

på samma sätt kan samma koncept för inkapsling tillämpas på kod., Inkapslad kod ska ha följande egenskaper:

  • alla vet hur man kommer åt den.
  • kan enkelt användas oavsett implementeringsdetaljer.
  • Det bör inte finnas några biverkningar av koden, till resten av programmet.

tanken på inkapsling är att hålla klasserna separerade och förhindra att de har tätt kopplat till varandra.

ett exempel på inkapsling är klassen java.util.Hashtable. Användaren vet bara att han kan lagra data i form av nyckel/värdepar i en Hashtable och att han kan hämta dessa data på olika sätt., Men den faktiska implementeringen som, hur och var dessa data faktiskt lagras, är dold från användaren. Användaren kan helt enkelt använda Hashtable varhelst han vill lagra nyckel / värdepar utan att bry sig om dess genomförande.

arv

det här inlägget ger den teoretiska förklaringen av arv med verkliga exempel. För detaljerad förklaring om detta ämne med java-program hänvisar arv med exempel och typer av arv i java.

  • arv är den mekanism genom vilken ett objekt förvärvar några / Alla egenskaper hos ett annat objekt.,
  • den stöder begreppet hierarkisk klassificering.

till exempel: bil är ett fyrhjuligt fordon så anta att vi har en klass FourWheeler och en underklass av den som heterCar. Här förvärvar bilen egenskaperna hos en klass FourWheeler. Andra klassificeringar kan vara en jeep, tempo, van etc. FourWheeler definierar en klass av fordon som har fyra hjul, och specifika utbud av motoreffekt, lastbärande kapacitet etc., Bil (betecknas som en underklass) förvärvar dessa egenskaper från FourWheeler, och har vissa specifika egenskaper, som skiljer sig från andra klassificeringar av FourWheeler, såsom lyx, komfort, form, storlek, användning etc.

en bil kan ha ytterligare klassificering som en öppen bil, liten bil, stor bil etc, som kommer att förvärva egenskaperna från både fyrhjuling och bil, men kommer fortfarande att ha vissa specifika egenskaper. På så sätt kan hierarkinnivån utökas till vilken nivå som helst.

Java Swing och Awt klasser representerar bästa exempel på arv.,

polymorfism

det här inlägget ger den teoretiska förklaringen av polymorfism med verkliga exempel. För detaljerad förklaring om detta ämne med java-program hänvisar polymorfism i java och runtime & kompilera tid polymorfism.

  • polymorfism innebär att behandla objekt på olika sätt baserat på deras datatyp.
  • med andra ord betyder det, en metod med flera implementeringar, för en viss åtgärdsklass. Och vilken implementering som ska användas bestäms vid körning beroende på situationen (dvs., li >
  • detta kan implementeras genom att utforma ett generiskt gränssnitt, vilket ger generiska metoder för en viss typ av åtgärd och det kan finnas flera klasser, vilket ger genomförandet av dessa generiska metoder.

låter oss titta på samma exempel på en bil. En bil har ett växelöverföringssystem. Den har fyra främre växlar och en bakåtväxel. När motorn accelereras sedan beroende på vilken växel är engagerad olika mängd kraft och rörelse levereras till bilen., Åtgärden är samma tillämpa redskap men baserat på vilken typ av redskap åtgärden beter sig annorlunda eller så kan man säga att det visar många former (polymorfism betyder många former)

polymorfism kan vara statisk och dynamisk både. Metod överbelastning är statisk polymorfism medan, metod overriding är dynamisk polymorfism.

  • överbelastning i enkla ord betyder att mer än en metod har samma metodnamn som beter sig annorlunda baserat på de argument som skickas när metoden anropas., Detta kallas statisk eftersom, vilken metod som ska åberopas bestäms vid tidpunkten för sammanställningen
  • åsidosättande innebär att en härledd klass implementerar en metod för sin superklass. Anropet till overriden-metoden löses vid körning, så kallad runtime polymorfism

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *