logo

Introduktion af objektorienteret programmering

Som navnet antyder, refererer objektorienteret programmering eller OOPs til sprog, der bruger objekter i programmering. Objektorienteret programmering har til formål at implementere virkelige enheder som arv, skjul, polymorfi osv. i programmering. Hovedformålet med OOP er at binde sammen dataene og de funktioner, der fungerer på dem, så ingen anden del af koden kan få adgang til disse data undtagen denne funktion.

OOPs koncepter:



  • Klasse
  • Objekter
  • Dataabstraktion
  • Indkapsling
  • Arv
  • Polymorfi
  • Dynamisk binding
  • Besked passerer

1. Klasse:

En klasse er en brugerdefineret datatype. Den består af datamedlemmer og medlemsfunktioner, som kan tilgås og bruges ved at oprette en forekomst af den pågældende klasse. Det repræsenterer det sæt af egenskaber eller metoder, der er fælles for alle objekter af én type. En klasse er som en plan for et objekt.

For eksempel: Overvej klassen af ​​biler. Der kan være mange biler med forskellige navne og mærker, men de vil alle dele nogle fælles egenskaber, da de alle vil have 4 hjul, hastighedsgrænse, kilometertal osv. Så her er bil klassen, og hjul, hastighedsgrænser, kilometertal er deres egenskaber.



kmp algoritme

2. Objekt:

Det er en grundlæggende enhed af objektorienteret programmering og repræsenterer de virkelige entiteter. Et objekt er en forekomst af en klasse. Når en klasse er defineret, allokeres der ingen hukommelse, men når den instansieres (dvs. et objekt oprettes), tildeles hukommelse. Et objekt har en identitet, tilstand og adfærd. Hvert objekt indeholder data og kode til at manipulere dataene. Objekter kan interagere uden at skulle kende detaljer om hinandens data eller kode, det er tilstrækkeligt at kende typen af ​​meddelelse, der accepteres, og typen af ​​svar returneret af objekterne.

For eksempel er hund et objekt i det virkelige liv, som har nogle egenskaber som farve, race, bark, søvn og spiser.



Objekt i OOPs

Objekt

3. Dataabstraktion:

java konverter streng til int

Dataabstraktion er en af ​​de mest essentielle og vigtige funktioner i objektorienteret programmering. Dataabstraktion refererer til kun at give væsentlig information om dataene til omverdenen, skjule baggrundsdetaljerne eller implementeringen. Overvej et virkeligt eksempel på en mand, der kører bil. Manden ved kun, at et tryk på speederen vil øge bilens hastighed, eller at bruge bremser vil stoppe bilen, men han ved ikke, hvordan hastigheden stiger ved at trykke på speederen, han kender ikke til bilens indre mekanisme eller implementering af speederen, bremserne osv. i bilen. Det er hvad abstraktion er.

4. Indkapsling:

bash for loop

Indkapsling er defineret som indpakning af data under en enkelt enhed. Det er den mekanisme, der binder kode og de data, den manipulerer sammen. I Encapsulation er variablerne eller dataene for en klasse skjult for enhver anden klasse og kan kun tilgås via en hvilken som helst medlemsfunktion i deres klasse, hvori de er erklæret. Som i indkapsling er dataene i en klasse skjult for andre klasser, så det er også kendt som data-skjulning .

Indkapsling i objektorienteret programmering

Overvej et virkeligt eksempel på indkapsling, i en virksomhed er der forskellige sektioner som regnskabssektionen, finanssektionen, salgssektionen osv. Finanssektionen håndterer alle de finansielle transaktioner og fører registre over alle data relateret til finans. På samme måde håndterer salgssektionen alle salgsrelaterede aktiviteter og fører regnskab over alt salg. Nu kan der opstå en situation, hvor en embedsmand fra finansafdelingen af ​​en eller anden grund har brug for alle data om salg i en bestemt måned. I dette tilfælde har han ikke direkte adgang til salgssektionens data. Han bliver først nødt til at kontakte en anden medarbejder i salgssektionen og derefter anmode ham om at give de særlige data. Dette er hvad indkapsling er. Her er salgssektionens data og de medarbejdere, der kan manipulere dem, pakket ind under et enkelt navn, salgssektion.

5. Arv:

Arv er en vigtig søjle i OOP (Object-Oriented Programming). En klasses evne til at udlede egenskaber og karakteristika fra en anden klasse kaldes arv. Når vi skriver en klasse, arver vi egenskaber fra andre klasser. Så når vi opretter en klasse, behøver vi ikke skrive alle egenskaberne og funktionerne igen og igen, da disse kan arves fra en anden klasse, der besidder den. Nedarvning giver brugeren mulighed for at genbruge koden, når det er muligt og reducere dens redundans.

tkinter knap

Interitance i objektorienteret programmering

6. Polymorfi:

Ordet polymorfi betyder at have mange former. Med enkle ord kan vi definere polymorfi som en beskeds evne til at blive vist i mere end én form. For eksempel kan en person på samme tid have forskellige egenskaber. Ligesom en mand på samme tid er en far, en mand, en medarbejder. Så den samme person har forskellig adfærd i forskellige situationer. Dette kaldes polymorfi.

Polymorfi i OOP'er

7. Dynamisk binding:

Ved dynamisk binding bestemmes koden, der skal udføres som svar på funktionskaldet, ved kørsel. Dynamisk binding betyder, at den kode, der er knyttet til et givent procedurekald, ikke er kendt før tidspunktet for opkaldet ved kørselstidspunktet. Dynamisk metodebinding En af de vigtigste fordele ved nedarvning er, at en eller anden afledt klasse D har alle medlemmerne af sin basisklasse B. Når først D ikke skjuler nogen af ​​de offentlige medlemmer af B, så kan et objekt af D repræsentere B i enhver kontekst hvor et B kunne bruges. Denne funktion er kendt som subtype polymorfi.

8. Sende besked:

Det er en kommunikationsform, der bruges i objektorienteret programmering såvel som parallel programmering. Objekter kommunikerer med hinanden ved at sende og modtage information til hinanden. En meddelelse for et objekt er en anmodning om udførelse af en procedure og vil derfor påkalde en funktion i det modtagende objekt, der genererer de ønskede resultater. Meddelelsesoverførsel involverer at angive navnet på objektet, navnet på funktionen og den information, der skal sendes.

ascii tabel java

Hvorfor har vi brug for objektorienteret programmering

  • At gøre udvikling og vedligeholdelse af projekter mere ubesværet.
  • For at give funktionen til dataskjulning, der er god til sikkerhedshensyn.
  • Vi kan løse problemer i den virkelige verden, hvis vi bruger objektorienteret programmering.
  • Det sikrer genbrug af kode.
  • Det lader os skrive generisk kode: som vil arbejde med en række data, så vi ikke behøver at skrive grundlæggende ting igen og igen.