Klassipõhine objektorienteeritud programmeerimine
From Wikipedia, the free encyclopedia
Remove ads
From Wikipedia, the free encyclopedia
Klassipõhine objektorienteeritud programmeerimine ehk klassipõhine programmeerimine on objektorienteeritud programmeerimise (OOP) stiil, kus pärimine käib klasside kaudu, mitte objektide enda kaudu (prototüübipõhine programmeerimine).
Kõige populaarsem ja arenenum OOP mudel on klassipõhine mudel, kus objektidel on olek (andmed), käitumismudel (meetodid, operatsioonid) ja identiteet (unikaalsed omadused, mis eristavad seda teistest objektidest). Objekti struktuuri ja käitumismudeli määrab klass. Objekti loomine käib klassipõhiselt, seega on iga objekt vastava klassi eksemplar.
Kapseldamine piirab kasutaja ligipääsu teatud objekti osadele, et kaitsta koodi juhuslike vigade eest. Samuti võimaldab see teha koodis muudatusi programmi liigselt muutmata. Kapseldamine ei piirdu vaid objektorienteeritud programmeerimiskeeltega. Definitsiooni järgi keskendub kapseldamine vajaliku info grupeerimisele, kuid mitte turvaprobleemidele. Tavaliselt puuduvad OOP keeltes objektidele ranged turvapiirangud ning eksisteerivad meetodid peidetud andmetele ligi pääsemiseks. Nende meetoditega on võimalik objekti väärtusi muuta ja välja kutsuda.
Klassipõhises programmeerimises käib pärimine ühe klassi laiendamise läbi teise klassi: olemasolev klass on ülemklass ning uus klass on alamklass. Iga alamklass pärib kõik ülemklassi omadused ja lisab neile iseenda unikaalsed omadused.[1] Kui alamklassil on vaid üks ülemklass, on tegemist ühekordse pärimisega. Kui aga alamklassil on mitu ülemklassi, kutsutakse seda mitmekordseks pärimiseks. Seega tekib klasside hierarhia, ühekordse pärimise puhul puu ning mitmekordse pärimise puhul võre.
Pärimise põhiomaduseks on nii liidese kui ka implementatsiooni pärimine. Pärimist on võimalik teostada ka klassideta, nagu tehakse prototüübipõhises programmeerimises.
Kuigi Simula pani alguse koodi klassideks jaotamisele, on esimeseks tuntumaks klassipõhise programmeerimiskeele näiteks Smalltalk. Klassipõhiste keelte hulka kuuluvad veel PHP, C++, Java, C# ja Objective-C.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.