INHOUDSOPGAWE[Versteek][Wys]
- 1. Wat presies is objekgeoriënteerde programmering?
- 2. Waarom is OOP's nodig?
- 3. Watter voordele bied OOPS-beginsels?
- 4. Wat is die pilare van die OOPs-konsep?
- 5. Wat presies is 'n klas?
- 6. Wat presies is 'n voorwerp?
- 7. Wat is OOP's se beperkings?
- 8. Wat is erfenis?
- 9. Wat presies is inkapseling?
- 10. Wat is polimorfisme?
- 11. Wat presies is abstraksie?
- 12. Wat presies is metode-oorlading?
- 13. Wat presies is metode oorheersend?
- 14. Wat presies is 'n superklas?
- 15. Wat presies is 'n subklas?
- 16. Wat presies is statiese polimorfisme?
- 17. Wat presies is dinamiese polimorfisme?
- 18. Beskryf die idee van 'n Konstrukteur.
- 19. Wat presies is die toegangswysigers?
- 20. Wat presies is 'n vernietiger?
- 21. Wat presies is basteroorerwing?
- 22. Wat presies is hiërargiese oorerwing?
- 23. Wat is die nadele van oorerwing?
- 24. Wat presies is 'n uitsondering?
- 25. Wat presies is uitsonderingshantering, en wat is die voordele daarvan?
- 26. Wat presies is virtuele funksies?
- 27. Wat presies is die vriendfunksie?
- 28. Wat presies is vullisversameling?
- 29. Wat presies is koppeling?
- 30. Wat presies is kohesie?
- 31. Beskryf 'n probeer/vang blok.
- 32. Beskryf 'n laaste blok.
- 33. Wat presies is 'n koppelvlak?
- 34. Wat presies is samestelling?
- 35. Wat presies is konstruktorketting?
- Gevolgtrekking
Een van die mees invloedryke programmeringsparadigmas word OOP's of objekgeoriënteerde programmering genoem. In plaas van funksies en prosesse, beklemtoon dit klasse en objekte.
Die hoofdoelwit daarvan is om data en dinge te verbind sodat dit makliker is om daarmee te werk. Elke objek in OOPs bestaan uit kode in die vorm van prosedures of metodes en data in die vorm van velde.
Tale soos C++, Objective C, Python, Perl en Java is van die gewildste objekgeoriënteerde tale. programmeringstale.
Dit is van kritieke belang om meer hieroor te verstaan, aangesien oops-onderhoudvrae uiters tipies is. Die meeste firmas is op soek na ingenieurs wat vertroud is met objekgeoriënteerde metodes en patrone. Dus, as jy van plan is om 'n onderhoud by te woon, moet jy goed vertroud wees met OOP-idees.
Verskeie objekgeoriënteerde programmeringsonderhoudvrae van beginner tot kundige vlakke sal in hierdie pos gewys word. Jy kan dus enige vlak van onderhoud slaag en jou droomposisie verseker.
1. Wat presies is objekgeoriënteerde programmering?
Programmering wat objekgeoriënteerd is (OOP's) is gebaseer op werklike objekte eerder as net funksies en prosesse. Klasse word vir individuele produkte geskep.
Oorerwing, polimorfisme en verberging is voorbeelde van werklike konsepte wat OOP's by programmering inkorporeer. Dit maak dit ook moontlik om data en kode te koppel.
2. Waarom is OOP's nodig?
Daar is verskeie redes waarom OOP's verkieslik is, maar die volgende is die belangrikste:
- OOPs, laat mense toe om sagteware geredelik te verstaan, selfs al is hulle nie vertroud met die implementering nie.
- Oeps, verbeter kode leesbaarheid, verstaanbaarheid en onderhoubaarheid met 'n faktor van tien.
- Deur OOP's te gebruik, kan selfs uiters groot toepassings eenvoudig gebou en beheer word.
3. Watter voordele bied OOPS-beginsels?
- OOPS, programmeringsvoorwerpe simuleer werklike wêreldvoorwerpe, wat kompleksiteit verminder en programhelderheid verbeter.
- Voorwerpe kan herhaaldelik in baie programme gebruik word.
- Elke objek skep 'n duidelike entiteit waarvan die interne bedrywighede onafhanklik is van ander stelselkomponente.
- Deur 'n paar nuwe voorwerpe bekend te stel en 'n paar reeds bestaande op te dateer, is dit moontlik om nuwe funksionaliteit by te voeg of aan te pas by veranderende bedryfsomstandighede.
- 'n OOPs-program se prosesse of datavoorstelling kan maklik klein aanpassings ondergaan.
4. Wat is die pilare van die OOPs-konsep?
Die volgende is die belangrikste pilare van OOP:
Erfenis: Dit stel klasse in staat om die eienskappe van 'n ander klas te erf.
inkapseling: Dit word gedefinieer as 'n objek-eienskap wat kritieke inligting verberg. Dit hou die data versteek vir klaslede. Die spesifiseerders beskryf hoe toegang tot die voorwerp se kenmerk in kode verkry word.
polimorfisme: Dit laat jou toe om 'n enkele aktiwiteit op verskeie maniere uit te voer. Dit word bewerkstellig deur koppelvlakke, waarin ons een koppelvlak verklaar wat daarna verskeie kere geïmplementeer word.
onttrekking: Jy kan hierdie funksie gebruik om kritieke inligting van die buitewêreld weg te steek en slegs die noodsaaklike feite aan te bied.
5. Wat presies is 'n klas?
'n Klas is 'n prototipe wat bestaan uit voorwerpe in verskillende toestande en met verskillende gedrag. Dit het 'n aantal metodes wat deur die voorwerpe in daardie klas gedeel word.
6. Wat presies is 'n voorwerp?
'n Voorwerp is 'n werklike entiteit wat dien as die fundamentele eenheid van OOP's, soos 'n stoel, kat of hond. Verskeie voorwerpe het verskillende toestande, eienskappe en aksies.
7. Wat is OOP's se beperkings?
- Die grootte is groter as dié van ander toepassings.
- Dit verg 'n bietjie om daaraan gewoond te raak.
- Sekere soorte probleme vereis dit nie.
- Dit was arbeidsintensief om te skep, en in vergelyking met ander toepassings werk dit stadiger.
8. Wat is erfenis?
'n Begrip genoem oorerwing verwys na die deel van 'n klas se gevestigde struktuur en gedrag deur 'n ander klas. Wanneer oorerwing op 'n enkele klas toegepas word, word daar na verwys as enkel erfenis; wanneer dit van baie klasse afhang, word daar na verwys as meervoudige erfporsies.
9. Wat presies is inkapseling?
Die idee van OOP's sluit ook inkapseling in. Dit beskryf die vermenging van data en datamanipulasietegnieke. Daarbenewens help dit om direkte toegang tot sommige dele van 'n voorwerp te voorkom.
10. Wat is polimorfisme?
In OOP-tale is polimorfisme 'n fundamentele konsep. Dit wys hoe verskillende klasse 'n koppelvlak kan deel. Hierdie klasse is almal in staat om unieke koppelvlakimplementerings te hê.
11. Wat presies is abstraksie?
Abstraksie is objekgeoriënteerde programmering (OOP's) konsep wat gebruik word om die struktuur van werklike objekte te skep. Dit "vertoon" net die belangrikste eienskappe en "versteek" vreemde inligting van die buitewêreld. Die basiese doel van abstraksie is om mense teen onnodige inligting te beskerm.
12. Wat presies is metode-oorlading?
Dit is moontlik vir twee of meer prosedures om dieselfde naam te hê. Hulle moet egter verskillende parameters hê, verskillende aantal parameters, verskillende soorte, of albei. Dit staan bekend as oorlaai metodes, en die kenmerk staan bekend as metode oorlaai.
13. Wat presies is metode oorheersend?
Objekgeoriënteerde programmering sluit die idee van metode-oorheersing in. Dit is 'n taalkenmerk waarmee 'n subklas of kinderklas 'n pasgemaakte implementering van 'n metode kan aanbied wat een van sy superklasse of ouerklasse reeds verskaf.
14. Wat presies is 'n superklas?
'n Superklas, dikwels bekend as 'n basisklas, is 'n tipe klas wat optree as die ouer van 'n ander klas of klasse. Die Motorklas het byvoorbeeld 'n subklas genaamd Voertuig.
15. Wat presies is 'n subklas?
'n Subklas is 'n subklas van 'n ander klas. 'n Vangwa is byvoorbeeld 'n Voertuigsubklas of afgeleide klas.
16. Wat presies is statiese polimorfisme?
Tydens samestelling vind 'n tipe polimorfisme bekend as statiese polimorfisme (statiese binding) plaas. Metode-oorlading is 'n tipe samestelling-tyd polimorfisme.
17. Wat presies is dinamiese polimorfisme?
'n Soort polimorfisme wat in looptyd opgelos word, word runtime-polimorfisme genoem, ook bekend as dinamiese polimorfisme (dinamiese binding). Die oorheersing van metodes is 'n illustrasie van runtime polimorfisme.
18. Beskryf die idee van 'n Konstrukteur.
'n Konstruktor is 'n spesifieke metode van 'n klas wat outomaties genoem word wanneer 'n klasinstansie geskep word. Wanneer jy toegang tot die klas kry, word dit saamgestel met dieselfde naam as die klas en inisialiseer al sy lede. 'n Konstruktor se primêre kenmerke is soos volg:
Daar is geen tipe terugkeer vir konstrukteurs nie.
Oorlaai van konstrukteurs is moontlik.
Dit word nie vereis om 'n konstruktor te spesifiseer nie; die.NET Framework sal dit outomaties doen.
19. Wat presies is die toegangswysigers?
In objekgeoriënteerde tale is sleutelwoorde toegangswysigers of toegangspesifiseerders. Dit help met die konfigurasie van klasse, metodes en ander lede se toeganklikheid.
20. Wat presies is 'n vernietiger?
'n Destruktor is 'n metode om die hulpbronne wat aan 'n voorwerp toegewys is, vry te stel. Wanneer 'n voorwerp vernietig word, word hierdie metode outomaties genoem.
21. Wat presies is basteroorerwing?
Hibriede oorerwing is 'n soort oorerwing wat gegenereer word deur die vermenging van verskeie vorme van oorerwing soos enkel, veelvuldig, ensovoorts.
22. Wat presies is hiërargiese oorerwing?
Veelvuldige subklasse erf van 'n ouerklas in die situasie van hiërargiese oorerwing. 'n Soort erfenis waarin talle klasse van 'n enkelouer of basisklas afstam, staan bekend as hiërargiese oorerwing. Byvoorbeeld, die vrugteklas kan subklasse bevat soos 'appel, 'mango' 'piesang', 'kersie', ensovoorts.
23. Wat is die nadele van oorerwing?
Dit verleng en bemoeilik die uitvoeringsproses. Dit noodsaak ook om tussen verskillende klasse te wissel. Die ouer- en kinderklasse is altyd onlosmaaklik verbind.
Wysigings aan die kurrikulum sal hersienings vir beide die ouer en die kind se klas noodsaak. Oorerwing moet versigtig geïmplementeer word anders sal die resultate verkeerd wees.
24. Wat presies is 'n uitsondering?
'n Uitsondering is 'n voorval wat inmeng met die gewone werking van die kode. Om voort te gaan met uitvoering, kan jy hierdie uitsonderings in Java hanteer. In Java is daar baie soorte vooraf gedefinieerde uitsonderings, en uitsonderingshantering word verskaf om die verhoogde uitsonderings met behulp van probeervangblokke te beheer.
25. Wat presies is uitsonderingshantering, en wat is die voordele daarvan?
Die belangrikste metode in Java om onverwagte looptydfoute te hanteer, is uitsonderingshantering. Dit laat jou toe om looptydfoute wat tydens programuitvoering voorkom, te beheer.
Die voordele van uitsonderingshantering sluit in die vermoë om gereelde programvloei te behou terwyl uitsonderings bestuur word. Byvoorbeeld, as 'n fout in een afdeling van die program voorkom, sal dit geen effek op die res van die program hê as ons die uitsondering met probeervangblokke hanteer nie.
26. Wat presies is virtuele funksies?
Virtuele funksies word ook by die ouerklas se funksies ingesluit en word deur die subklas oorheers. Hierdie roetines help met die bereiking van runtime polimorfisme.
27. Wat presies is die vriendfunksie?
'n Vriendfunksie is 'n funksie wat aan 'n klas behoort en toegang tot sy publieke, private of beskermde data word toegelaat. As die funksie buite die klas gedefinieer word, is dit nie moontlik om hierdie data te herwin nie. Die sleutelwoorde vir toegangsbeheer privaat, publiek en beskerm het geen betrekking op 'n vriendverklaring nie, wat enige plek in die klasverklaring gemaak kan word.
28. Wat presies is vullisversameling?
Vullisversameling (GC) is 'n element van programmeertale soos C# en Java wat as 'n geheueherwinningstelsel dien. 'n Vullisversameling-enjin (GC) is 'n komponent van 'n programmeertaal wat voorsiening maak vir outomatiese vrystelling van geheuespasie vir voorwerpe wat die toepassing nie meer gebruik nie.
29. Wat presies is koppeling?
Dit verwys na situasies waarin verskeie klasse op mekaar staatmaak en kennis deel. 'n Sterk verband vind plaas wanneer een klas gedetailleerde kennis van 'n ander klas het. U kan die sigbaarheid van klasse, metodes of veranderlikes spesifiseer deur toegangswysigers te gebruik. Interfaces word gebruik om swakker koppeling te verskaf.
30. Wat presies is kohesie?
Die manier waarop 'n komponent 'n sekere aktiwiteit bewerkstellig, word na verwys as sy samehang. 'n Sterk, samehangende benadering sal bloot die gedefinieerde taak verrig, terwyl 'n swak, samehangende metode die enkele taak in verskeie kleiner take sal verdeel en dan voltooi.
Die Java.io-pakket is redelik samehangend, maar die java.util-pakket is nie.
31. Beskryf 'n probeer/vang blok.
Wanneer 'n program 'n fout teëkom as gevolg van verkeerde kode of data, dui "probeer" en "vang" aan hoe om dit te bestuur. 'n Probeerblok is die naam van die deel van die kode wanneer uitsonderings voorkom. 'n Vangblok word gebruik om uitsonderings van probeerblokke vas te vang en te hanteer.
32. Beskryf 'n laaste blok.
Die probeer sleutelwoord se werkende gedeelte van kode word laaste aangedui. Dit dui die kode aan wat altyd onmiddellik na die proef uitgevoer word en enige vangblokke voordat die metode voltooi word. Die finale blok word altyd uitgevoer of 'n uitsondering gegooi of gevang word.
33. Wat presies is 'n koppelvlak?
'n Koppelvlak is 'n kombinasie van abstrakte metodes en 'n gebruikergedefinieerde datatipe. 'n Klas implementeer 'n koppelvlak en erf die koppelvlak se abstrakte funksies.
'n Klas verteenwoordig die eienskappe en gedrag van 'n voorwerp, terwyl 'n koppelvlak die gedrag insluit wat 'n klas implementeer. Die koppelvlak verteenwoordig "wat", terwyl die klas "hoe" oordra.
34. Wat presies is samestelling?
Die samestelling kan gebruik word om 'n verband te verkry. Dit demonstreer 'n sterk objekskakel tussen die afhanklike en onafhanklike objekte, in teenstelling met aggregasie. Die afhanklike objek bestaan nie in hierdie omstandighede nie en sal verwyder word as die ouerobjek uitgevee word.
35. Wat presies is konstruktorketting?
Konstruktorketting is 'n tegniek om een konstruktor van 'n ander af te roep in verhouding tot die huidige voorwerpverwysing. Daar is twee opsies:
- Daar kan na die konstruktor in die huidige klas verwys word deur die "hierdie" sleutelwoord te gebruik.
- Die "super" sleutelwoord sal gebruik word om die konstruktor vanaf die basisklas op te roep.
Gevolgtrekking
Objekgeoriënteerde programmering maak dit nodig om oor die struktuur van die program te dink en voor die tyd voor te berei. Ondersoek hoe om die vereistes in basiese, herbruikbare klasse te verdeel wat gebruik kan word om gevalle van dinge te skep.
In die algemeen maak die omhelsing van OOP voorsiening vir verbeterde datastrukture en herbruikbaarheid, wat op die lang termyn tyd bespaar. Sien Hashdork se onderhoudreeks vir hulp met onderhoud voorbereiding.
Lewer Kommentaar