Razlika Između Klasa I Struktura

Razlika Između Klasa I Struktura
Razlika Između Klasa I Struktura

Video: Razlika Između Klasa I Struktura

Video: Razlika Između Klasa I Struktura
Video: Fluid (446) Простое перелистывание для всех / Учебник / Cell Creator и Bubble Booster 2024, Travanj
Anonim

Razredi vs strukture

Neki od glavnih koncepata objektno orijentiranih (OO) programskih jezika su enkapsulacija, nasljeđivanje i polimorfizam. Klasa i struktura su dva od OO konstrukata / alata koji pomažu programerima da postignu ove koncepte u većini postojećih OO programskih jezika (Java ne pruža strukture). Predavanja su apstraktni prikaz predmeta iz stvarnog svijeta. Strukture su vrlo slične klasama sa sličnom uporabom, ali imaju malo ograničenja u usporedbi s klasama. I klase i struktura koriste se za grupiranje sličnih vrsta podataka zajedno.

Što su satovi?

Predavanja prikazuju apstraktni prikaz predmeta iz stvarnog svijeta, dok odnosi prikazuju kako je svaka klasa povezana s drugima. I klase i odnosi imaju svojstva koja se nazivaju atributima. Metode u razredima predstavljaju ili definiraju ponašanje tih klasa. Metode i atributi klase nazivaju se članovima klase. Tipično se inkapsulacija postiže tako da atributi postanu privatni, dok se stvaraju javne metode koje se mogu koristiti za pristup tim atributima. Objekt je instanca klase. Nasljeđivanje omogućuje korisniku da proširi klase (koje se nazivaju podrazredi) iz ostalih klasa (zvane super klase). Polimorfizam omogućava programeru da zamijeni objekt klase umjesto objekta svoje super klase. Obično imenice pronađene u definiciji problema izravno postaju klase u programu. I slično,glagoli postaju metode. Javni, privatni i zaštićeni tipični su modifikatori pristupa koji se koriste za nastavu. Dijagram klasa prikazuje klase sustava, odnose između klasa i njihove atribute.

Što su strukture?

Kao što je gore spomenuto, strukture su vrlo slične klasama sa sličnom uporabom, ali imaju malo ograničene mogućnosti od klasa. Zapravo, klase se mogu smatrati proširenjem na strukture. Na primjer, strukture su iste kao klase u C ++-u, ali prema zadanim postavkama imaju javne članove. Korisnik može definirati strukturu koja predstavlja tip koji je složeni. Slično razredima, strukture sadrže članove koji mogu pripadati mnogim vrstama. Ključna riječ struct koristi se za definiranje strukture na C i C ++, dok se ključna riječ Struktura koristi za istu u. NET programskim jezicima.

Koja je razlika između klasa i struktura?

Iako su i klase i strukture slične konstrukcije koje se mogu naći u programskim jezicima, oni imaju suptilne razlike. Tipično je klasa produžetak strukture, pa stoga strukture imaju neka relativna ograničenja. Na primjer, strukture se mogu smatrati istim kao i klase u C ++-u, ali članovi po defaultu nisu javni (za razliku od struktura). To zapravo znači da možete definirati klasu i strukturu s potpuno istim karakteristikama pomoću odgovarajućih modifikatora pristupa u C ++. Međutim, u C, strukture ne mogu sadržavati nikakve funkcije ili preopterećene operacije. Ključne riječi class i struct koriste se za definiranje klase, odnosno strukture u C ++-u. Kada je riječ o. NET jezicima (C #, VB. NET, itd.), Klasa je referentna vrsta, dok je struktura vrsta vrijednosti. I obično,strukture se koriste za manje objekte, ali klase se koriste za veće objekte koji se duže čuvaju u memoriji.

Preporučeno: