Alles wat u moet weten over objectgeoriënteerd programmeren in C ++



Dit artikel geeft je een diepgaande inleiding tot een iteresterende programmeerbenadering die Object Oriented Programming in C ++ is.

heeft de programmeerwereld beslist stormenderhand veroverd toen het verscheen en vormt nog steeds voor een groot deel de basis voor programmeren. In dit artikel zouden we objectgeoriënteerd programmeren in C ++ onderzoeken. Volgende aanwijzingen komen in dit artikel aan bod,

Aan de slag met dit artikel over objectgeoriënteerd programmeren in C ++





Wat is objectgeoriënteerd programmeren?

De belangrijkste motivatie achter de uitvinding van de objectgeoriënteerde benadering is het wegnemen van enkele van de tekortkomingen die zijn aangetroffen in de procedurele benadering. In OOP worden gegevens behandeld als een kritiek element in de programmaontwikkeling en beperken ze de stroom door het systeem. Het verbindt de gegevens nauwer met de functie die erop werkt en beschermt deze tegen onbedoelde wijzigingen door externe functies. Het stelt het probleem in staat om in een aantal entiteiten te breken die objecten worden genoemd en bouwt vervolgens gegevens en functies rond deze objecten. De gegevens van een object zijn alleen toegankelijk via de functies die bij dat specifieke object horen. De functies van een object hebben echter indien nodig toegang tot de functies van andere objecten.

Verderop met dit artikel over objectgeoriënteerd programmeren in C ++



Kenmerken van objectgeoriënteerd programmeren:

  • Het legt meer de nadruk op gegevens dan op procedure.
  • De programma's zijn onderverdeeld in objecten waardoor het gemakkelijk is om mee te werken.
  • Datastructuren zijn zo ontworpen dat ze de objecten karakteriseren.
  • Functies die werkenAande data van een object worden bij elkaar geplaatst in de datastructuur.
  • Gegevens zijn verborgen en kunnen zonder toestemming niet worden geopend door externe functies.
  • Communicatie tussen objecten kan plaatsvinden met behulp van functies.
  • Het toevoegen van nieuwe gegevens en functies is eenvoudig geworden.
  • Volgt de bottom-up benadering bij het ontwerpen van programma's.

Verderop met dit artikel over objectgeoriënteerd programmeren in C ++

Voorwerpen

Objecten zijn de meest elementaire run- en middottime-entiteiten in OOP's. Ze kunnen door de gebruiker gedefinieerde gegevens vertegenwoordigen, zoals vectoren, tijd en lijsten of elk item dat het programma moet verwerken. Het programmeerprobleem wordt geanalyseerd op basis van objecten en de aard van de communicatie daartussen. Objecten moeten zo worden geselecteerd dat ze nauw overeenkomen met de objecten uit de echte wereld. Objecten nemen ruimte in het geheugen in beslag en hebben geen bijbehorend adres. Terwijl executieve objecten communiceren door berichten naar elkaar te sturen. Als bijvoorbeeld 'Student' en * Student_roll_no 'twee objecten in een programma zijn, kan het Student-object een bericht naar het Student_roll_no-object sturen met het verzoek om de bijbehorende punten. Elk object bevat code om de gegevens te manipuleren. Objecten kunnen met elkaars gegevens of code communiceren zonder de gegevens of code ervan te kennen

Verderop met dit artikel over Object-Oriented Programming C ++



wat is init in python

Klassen

De hele set code van een object kan met behulp van een klasse tot een door de gebruiker gedefinieerd gegevenstype worden gemaakt. Eigenlijk zijn objecten variabelen van de type klasse. Zodra we een klasse hebben gedefinieerd, kunnen we een willekeurig aantal objecten maken die tot de klasse behoren. Elk object kan worden geassocieerd met de gegevens van de typeklasse waarmee ze zijn gemaakt. Een klasse is dus niets anders dan een verzameling objecten van hetzelfde type. Mobiel, laptop en smartwatch behoren bijvoorbeeld allemaal tot de klasse elektronica. Klassen zijn door de gebruiker gedefinieerde gegevenstypen. De syntaxis die wordt gebruikt om een ​​object te maken, is vrij eenvoudig. Als elektronica is gedefinieerd als een klasse, dan zal de instructie elektronica laptop een objectlaptop creëren die tot de klasse elektronica behoort.

elektronica laptop

Dit zal een object-laptop creëren die tot de klasse elektronica behoort.

Verderop met dit artikel over objectgeoriënteerd programmeren in C ++

Inkapseling

Inkapseling kan worden gedefinieerd als het samenvatten van gegevens en informatie onder een enkele eenheid. In Object-Oriented Programming wordt encapsulation gedefinieerd als het samenbinden van de gegevens en de functies die ze manipuleren.

Inkapseling - Objectgeoriënteerd programmeren in Cpp - Edureka

Beschouw eens een echt voorbeeld van inkapseling: in een school zijn er verschillende secties zoals de sectie van de leerling, de sectie docenten, de sectie rekeningen, enz. De sectie studenten behandelt alle activiteiten van de leerling en houdt een register bij van alle gegevens met betrekking tot financiën. Op dezelfde manier behandelt het docentengedeelte alle gerelateerde activiteiten van de docent en houdt het alle cijfers en prestaties van leerlingen bij. Nu kan er een situatie ontstaan ​​dat een student uit de studentengeleding om de een of andere reden alle gegevens over cijfers en prestaties van alle studenten nodig heeft. In dit geval heeft hij geen directe toegang tot de gegevens van de sectie van de docent. Hij zal eerst contact moeten opnemen met een docent in de docentensectie en hem dan vragen om alle gegevens te geven. Dit is wat inkapseling is. Hier zijn de gegevens van de leerlingsectie en de docentensectie die ze kunnen manipuleren verpakt onder één naam van 'docentensectie'.

Verdergaan met dit artikel

Abstractie

Abstractie verwijst naar het tonen van alleen de belangrijke en vereiste functies van de applicatie en het verbergen van de details. In C ++ kunnen klassen gegevens en functies leveren aan de buitenwereld om toegang te krijgen, de variabelen verborgen houden voor directe toegang, of klassen kunnen zelfs alles voor iedereen toegankelijk verklaren, of misschien alleen voor de klassen die het erven, we kunnen ze wijzigen volgens ons vereisten.

Dit kan worden gedaan met behulp van toegangsspecificaties. C ++ heeft 3 toegangsspecificaties:

  • Privaat
  • Beschermd
  • Openbaar

Verdergaan met dit artikel

Polymorfisme

Het woord polymorfisme betekent vele vormen hebben. We kunnen polymorfisme definiëren als het vermogen van een functie of gegevens om in meer dan één vorm weer te geven. Een persoon kan tegelijkertijd verschillende kenmerken hebben. Als jongen is het tegelijkertijd een student, een broer, een zoon. Dus dezelfde persoon vertoont verschillend gedrag in verschillende situaties. Dit heet polymorfisme.

Een bewerking kan in verschillende gevallen verschillend gedrag vertonen volgens de vereisten. Het gedrag hangt af van de soorten gegevens die worden gebruikt en de vereisten voor de bewerking.

C ++ ondersteunt overbelasting van operators en overbelasting van functies.

  • Overbelasting van operators: het is het proces waarbij een operator in verschillende gevallen verschillend gedrag vertoont.
  • Functie-overbelasting: functie-overbelasting gebruikt een enkele functienaam om verschillende soorten taken uit te voeren.

Polymorfisme wordt veel gebruikt bij het implementeren van overerving.

Verderop met dit artikel over objectgeoriënteerd programmeren in C ++

Erfenis

Overerving is het proces waarmee objecten van de ene klasse de eigenschappen, functies en gegevens van objecten van een andere klasse kunnen verkrijgen. Het volgt het concept van hiërarchische classificatie. De vogel ‘mus’ maakt bijvoorbeeld deel uit van de klasse ‘vliegende vogel’ die weer deel uitmaakt van de klasse ‘vogel’. Met behulp van dit soort indeling deelt elke afgeleide klasse gemeenschappelijke kenmerken en gegevens met de klasse waarvan hij is geërfd. Overerving geeft het idee van herbruikbaarheid. Dit betekent dat we extra functies aan een bestaande klasse kunnen toevoegen zonder deze te wijzigen of aan te passen. Dit is mogelijk door een nieuwe klasse af te leiden uit de bestaande klasse. De nieuwe klas krijgt de gecombineerde kenmerken van zowel ouder- als kindklasse.

Het echte gebruik van de overerving is dat het de programmeur in staat stelt een klasse te hergebruiken die bijna, maar niet precies, is wat hij wil, en de klasse te wijzigen en zo wijzigingen aan te brengen dat het geen ongewenste neveneffecten introduceert. in de rest van de klassen. Merk op dat elke subklasse alleen die kenmerken definieert die er uniek voor zijn en de rest is afgeleid van de bovenliggende klasse. Zonder het gebruik van enige classificatie zou elke klasse expliciet alle functies moeten bevatten, wat veel tijd en moeite zou kosten.

Hiermee zijn we aan het einde gekomen van dit artikel over ‘Object Oriented Programming in C ++’. Als je meer wilt weten, bekijk dan de door Edureka, een vertrouwd online leerbedrijf. Edureka's Java J2EE- en SOA-trainings- en certificeringscursus is ontworpen om u te trainen in zowel kern- als geavanceerde Java-concepten, samen met verschillende Java-frameworks zoals Hibernate & Spring.

Heeft u een vraag voor ons? Vermeld het in het opmerkingengedeelte van deze blog en we nemen zo snel mogelijk contact met je op.