Video: Klasside Ja Struktuuride Erinevus
2024 Autor: Mildred Bawerman | [email protected]. Viimati modifitseeritud: 2023-12-16 08:38
Klassid vs struktuurid
Objektorienteeritud (OO) programmeerimiskeelte mõned peamised mõisted on kapseldamine, pärimine ja polümorfism. Klass ja struktuur on kaks OO konstruktsiooni / tööriista, mis aitavad programmeerijatel need mõisted saavutada enamikus väljuvates OO programmeerimiskeeltes (Java ei paku struktuure). Klassid on abstraktne kujutis reaalse maailma objektidest. Struktuurid on väga sarnased sarnase kasutusega klassidele, kuid neil on klassidega võrreldes vähe piiranguid. Sarnast tüüpi andmete koos rühmitamiseks kasutatakse nii klasse kui ka struktuuri.
Mis on klassid?
Klassid kujutavad reaalse maailma objektide abstraktset kujutist, seosed aga seda, kuidas iga klass on teistega seotud. Nii klassidel kui ka suhetel on omadused, mida nimetatakse atribuutideks. Klasside meetodid esindavad või määratlevad nende klasside käitumist. Klasside meetodeid ja atribuute nimetatakse klassi liikmeteks. Tavaliselt saavutatakse kapseldamine, muutes atribuudid privaatseks, luues samas avalikud meetodid, mida saab kasutada nendele atribuutidele juurdepääsemiseks. Objekt on klassi eksemplar. Pärimine võimaldab kasutajal laiendada klasse (nn alamklassid) teistest klassidest (nn superklassid). Polümorfism võimaldab programmeerijal asendada klassi objekti selle superklassi objekti asemel. Tavaliselt muutuvad probleemi määratlusest leitud nimisõnad programmis otseselt klassideks. Ja sarnaselttegusõnadest saavad meetodid. Klassides kasutatavad tüüpilised juurdepääsumuundurid on avalik, privaatne ja kaitstud. Klassiskeem näitab süsteemide klasse, klassidevahelisi seoseid ja nende atribuute.
Mis on struktuurid?
Nagu eespool mainitud, on struktuurid väga sarnased sarnase kasutusega klassidele, kuid nende võimalused on klassidest veidi piiratud. Tegelikult võib klasse pidada struktuuride laienduseks. Näiteks struktuurid on samad kui klassides C ++, kuid neil on vaikimisi avalikud liikmed. Kasutaja saab defineerida struktuuri, mis tähistab komposiit tüüpi. Sarnaselt klassidele sisaldavad struktuurid liikmeid, mis võivad kuuluda mitmesse tüüpi. Märksõna struct kasutatakse struktuuri määratlemiseks C ja C ++ keeles, samas kui märksõna Structure kasutatakse. NET programmeerimiskeeltes sama jaoks.
Mis vahe on klassidel ja struktuuridel?
Kuigi nii klassid kui ka struktuurid on programmeerimiskeeltes sarnased konstruktsioonid, on neil peent erinevusi. Tavaliselt on klass struktuuri laiendus ja seetõttu on struktuuridel teatud suhtelised piirangud. Näiteks võib struktuure pidada samadeks kui klassides C ++, kuid liikmed pole klassides vaikimisi avalikud (erinevalt struktuuridest). See tähendab tegelikult seda, et saate määratleda täpselt samade omadustega klassi ja struktuuri, kasutades C ++ vastavaid juurdepääsumuundureid. Kuid C-s ei saa struktuurid sisaldada ühtegi funktsiooni ega ülekoormatud toiminguid. Märksõnu klass ja struktuur kasutatakse vastavalt klassi ja struktuuri määratlemiseks C ++ keeles. Kui tegemist on. NET-keeltega (C #, VB. NET jne), on klass viitetüüp, struktuur aga väärtuse tüüp. Ja tavaliselt,struktuure kasutatakse väiksemate objektide jaoks, kuid klasside jaoks kasutatakse suuremaid objekte, mis jäävad mällu pikemaks ajaks.
Soovitatav:
Sümmeetriliste Ja Asümmeetriliste Tippmolekulide Erinevus
Põhiline erinevus sümmeetriliste ja asümmeetriliste tippmolekulide vahel on see, et sümmeetrilistel tippmolekulidel on üks õige pöörlemistelg ja kaks inertsimomenti
Homoloogiliste Struktuuride Ja Vestigiaalsete Struktuuride Erinevus
Peamine erinevus homoloogsete struktuuride ja vestigiaalsete struktuuride vahel on see, et homoloogsed struktuurid on anatoomiliselt sarnased
Iso Ja Neo Struktuuride Erinevus
Peamine erinevus iso ja neo struktuuride vahel on see, et eesliide iso viitab orgaanilisele ühendile, mis sisaldab kõiki süsiniku aatomeid, välja arvatud üks, mis moodustab koonuse
Objektide Ja Klasside Erinevus
Objektid vs klassid Objekte ja klasse kasutatakse objektorienteeritud programmeerimiskeeltes. Kõik objektorienteeritud programmeerimiskeeled, näiteks C ++, Java, .NET
Homoloogiliste Ja Analoogsete Struktuuride Erinevus
Peamine erinevus - homoloogsed ja analoogsed struktuurid Arvatakse, et organismide ja struktuuride sarnasused on päritud ühiselt esivanemalt. Bi