logo

Introductie van objectgeoriënteerd programmeren

Zoals de naam al doet vermoeden, verwijst Object-Oriented Programming of OOPs naar talen die objecten gebruiken bij het programmeren. Objectgeoriënteerd programmeren heeft tot doel om real-world entiteiten zoals overerving, verbergen, polymorfisme, enz. In het programmeren te implementeren. Het belangrijkste doel van OOP is om de gegevens en de functies die erop werken samen te binden, zodat geen enkel ander deel van de code toegang heeft tot deze gegevens, behalve die functie.

OOPs-concepten:



alfabet op nummer
  • Klas
  • Voorwerpen
  • Data abstractie
  • Inkapseling
  • Erfenis
  • Polymorfisme
  • Dynamische binding
  • Bericht overslaan

1. Klasse:

Een klasse is een door de gebruiker gedefinieerd gegevenstype. Het bestaat uit gegevensleden en lidfuncties, die toegankelijk en gebruikt kunnen worden door een exemplaar van die klasse te maken. Het vertegenwoordigt de reeks eigenschappen of methoden die gemeenschappelijk zijn voor alle objecten van één type. Een klasse is als een blauwdruk voor een object.

Bijvoorbeeld: Denk eens aan de autoklasse. Er zijn misschien veel auto's met verschillende namen en merken, maar ze hebben allemaal een aantal gemeenschappelijke eigenschappen, zoals ze hebben allemaal 4 wielen, snelheidslimiet, kilometerbereik, enz. Dus hier is auto de klasse, en wielen, snelheidslimieten, kilometerstand zijn hun eigendommen.



2. Voorwerp:

Het is een basiseenheid van objectgeoriënteerd programmeren en vertegenwoordigt de werkelijke entiteiten. Een object is een instantie van een klasse. Wanneer een klasse wordt gedefinieerd, wordt er geen geheugen toegewezen, maar wanneer deze wordt geïnstantieerd (dat wil zeggen dat er een object wordt gemaakt) wordt er geheugen toegewezen. Een object heeft een identiteit, staat en gedrag. Elk object bevat gegevens en code om de gegevens te manipuleren. Objecten kunnen communiceren zonder details van elkaars gegevens of code te hoeven kennen. Het is voldoende om te weten welk type bericht wordt geaccepteerd en welk type reactie door de objecten wordt geretourneerd.

Hond is bijvoorbeeld een levensecht object, dat enkele kenmerken heeft, zoals kleur, ras, blaf, slaap en eet.



java converteert tekenreeks naar int
Object in OOP's

Voorwerp

3. Gegevensabstractie:

Data-abstractie is een van de meest essentiële en belangrijke kenmerken van objectgeoriënteerd programmeren. Data-abstractie verwijst naar het verstrekken van alleen essentiële informatie over de gegevens aan de buitenwereld, waarbij de achtergronddetails of implementatie verborgen blijven. Beschouw eens een voorbeeld uit de praktijk van een man die een auto bestuurt. De man weet alleen dat het indrukken van het gaspedaal de snelheid van de auto zal verhogen of dat het remmen de auto zal doen stoppen, maar hij weet niet hoe de snelheid toeneemt als het gaspedaal wordt ingedrukt, hij weet niet wat het interne mechanisme van de auto is of de implementatie van het gaspedaal, de remmen etc. in de auto. Dit is wat abstractie is.

4. Inkapseling:

Inkapseling wordt gedefinieerd als het samenbrengen van gegevens onder één enkele eenheid. Het is het mechanisme dat code en de gegevens die het manipuleert met elkaar verbindt. In Encapsulation zijn de variabelen of gegevens van een klasse verborgen voor elke andere klasse en zijn ze alleen toegankelijk via elke lidfunctie van hun klasse waarin ze zijn gedeclareerd. Net als bij inkapseling worden de gegevens in een klasse verborgen voor andere klassen, dus ook wel bekend als gegevens verbergen .

Inkapseling in objectgeoriënteerd programmeren

Beschouw een realistisch voorbeeld van inkapseling: in een bedrijf zijn er verschillende secties, zoals de boekhoudsectie, de financiële sectie, de verkoopsectie, enz. De financiële sectie verwerkt alle financiële transacties en houdt alle gegevens met betrekking tot financiën bij. Op dezelfde manier behandelt de verkoopsectie alle verkoopgerelateerde activiteiten en houdt het alle verkopen bij. Nu kan er een situatie ontstaan ​​waarin een ambtenaar van de financiële afdeling om de een of andere reden alle gegevens over de verkopen in een bepaalde maand nodig heeft. In dit geval heeft hij geen directe toegang tot de gegevens van de verkoopsectie. Hij zal eerst contact moeten opnemen met een andere functionaris van de verkoopafdeling en hem vervolgens moeten vragen de betreffende gegevens te verstrekken. Dit is wat inkapseling is. Hier worden de gegevens van de verkoopsectie en de medewerkers die deze kunnen manipuleren onder één enkele naam verkoopsectie verpakt.

css vetgedrukt

5. Erfenis:

Overerving is een belangrijke pijler van OOP (Object-Oriented Programming). Het vermogen van een klasse om eigenschappen en kenmerken af ​​te leiden van een andere klasse wordt overerving genoemd. Wanneer we een klasse schrijven, erven we eigenschappen van andere klassen. Wanneer we dus een klasse maken, hoeven we niet alle eigenschappen en functies steeds opnieuw te schrijven, omdat deze kunnen worden geërfd van een andere klasse die deze bezit. Door overerving kan de gebruiker de code waar mogelijk hergebruiken en de redundantie ervan verminderen.

Interitantie in objectgeoriënteerd programmeren

6. Polymorfisme:

Het woord polymorfisme betekent dat er vele vormen zijn. In eenvoudige bewoordingen kunnen we polymorfisme definiëren als het vermogen van een bericht om in meer dan één vorm te worden weergegeven. Een persoon kan bijvoorbeeld verschillende kenmerken hebben. Zoals een man tegelijkertijd vader, echtgenoot en werknemer is. Dezelfde persoon vertoont dus verschillend gedrag in verschillende situaties. Dit heet polymorfisme.

Polymorfisme in OOP's

7. Dynamische binding:

postorder traversal van binaire boom

Bij dynamische binding wordt tijdens runtime bepaald welke code moet worden uitgevoerd als reactie op de functieaanroep. Dynamische binding betekent dat de code die aan een bepaalde procedureaanroep is gekoppeld, pas bekend is op het moment van de aanroep tijdens runtime. Dynamische methodebinding Een van de belangrijkste voordelen van overerving is dat een afgeleide klasse D alle leden van zijn basisklasse B heeft. Zodra D geen enkel publiek lid van B verbergt, kan een object van D B in elke context vertegenwoordigen. waar een B zou kunnen worden gebruikt. Dit kenmerk staat bekend als subtypepolymorfisme.

8. Bericht doorgeven:

Het is een vorm van communicatie die zowel bij objectgeoriënteerd programmeren als bij parallelle programmering wordt gebruikt. Objecten communiceren met elkaar door informatie naar elkaar te verzenden en te ontvangen. Een bericht voor een object is een verzoek om uitvoering van een procedure en zal daarom een ​​functie in het ontvangende object aanroepen die de gewenste resultaten genereert. Bij het doorgeven van berichten moet u de naam van het object, de naam van de functie en de te verzenden informatie opgeven.

Waarom hebben we objectgeoriënteerd programmeren nodig?

  • Om de ontwikkeling en het onderhoud van projecten eenvoudiger te maken.
  • Om de functie van het verbergen van gegevens te bieden die goed is voor beveiligingsproblemen.
  • We kunnen problemen uit de echte wereld oplossen als we objectgeoriënteerd programmeren gebruiken.
  • Het zorgt voor herbruikbaarheid van code.
  • Hiermee kunnen we generieke code schrijven: die met een reeks gegevens werkt, zodat we de basiszaken niet steeds opnieuw hoeven te schrijven.