Innkapsling
Innkapsling er bunting av data og metoder i en enkelt enhet, kalt et objekt. Objekter kan opprettes, ødelegges og sendes rundt som alle andre datatyper. De eneste operasjonene som kan utføres på et objekt er de som er definert av dets metoder. Dette sikrer at objekter brukes på en konsistent måte.
abstraksjon
Abstraksjon er handlingen for å skjule implementeringsdetaljene til et objekt for brukeren. Brukere trenger bare å kjenne grensesnittet til et objekt, ikke hvordan det er implementert. Dette gjør at objekter kan endres eller erstattes uten å påvirke koden som bruker dem.
Arv
Arv er muligheten for et nytt objekt til å arve egenskapene og metodene til et eksisterende objekt. Dette gjør det mulig å lage objekter som er varianter av eksisterende objekter. For eksempel kan det lages en ny bilklasse som arver motoren og hjulene fra bilklassen.
Polymorfisme
Polymorfisme er evnen for et objekt til å reagere på forskjellige meldinger på forskjellige måter. Dette gjør at objekter kan brukes på en rekke måter. For eksempel kan et bilobjekt reagere på meldingen "kjør" ved å bevege seg fremover, og på meldingen "stopp" ved å stoppe.
Objektorientert programmering gir en rekke fordeler i forhold til tradisjonell prosedyreprogrammering, inkludert:
Økt gjenbruk av kode :Objekter kan gjenbrukes i forskjellige programmer, noe som reduserer mengden kode som må skrives.
Forbedret vedlikehold :Objekter kan enkelt endres og utvides uten å påvirke resten av programmet.
Forbedret lesbarhet :Objekter gjør koden mer lesbar og lettere å forstå.
Større fleksibilitet :Objekter kan brukes til å lage komplekse programvaresystemer som er lett utvidbare og skalerbare.
Objektorientert programmering er et kraftig programmeringsparadigme som brukes i en lang rekke applikasjoner, inkludert operativsystemer, programvareutviklingsverktøy og spill.