Razred prema objektu
Objektno orijentirano programiranje ili OOP vrlo je popularan stil programiranja, zbog njegove mogućnosti rukovanja složenijim aplikacijama s puno više koda. To je zato što podatke organizira u objekte koji su usporedivi sa stvarnim životnim objektima. Klasa i objekt su dva pojma koja se uobičajeno koriste u OOP-u. Predmeti su u svom najosnovnijem obliku primjerci klasa.
Da biste koristili objekte u programu, morate deklarirati svojstva i postupke u klasi. Da bismo to bolje vizualizirali, razgovarajmo o tome na primjeru. Ako želite stvoriti program koji se bavi vozilima, morat ćete stvoriti klasu za vozila. U klasi biste stvorili varijable koje će sadržavati informacije relevantne za vozila. Vrijednosti poput kapaciteta putnika, najveće brzine i kapaciteta goriva tipične su za postupke poput pokretanja i zaustavljanja. Nakon što ste stvorili klasu za vozila, sada možete stvoriti predmete u svojoj aplikaciji koji se temelje na klasi vozila. Možete stvoriti objekt nazvan automobil ili motocikl koji se temelji na vozilima. Tada možete ispuniti relevantne podatke o objektu i koristiti ih onako kako smatrate da se u vašoj prijavi uklapa.
Kao što ste već zaključili iz gornjeg primjera, informacije koje ćete zaista koristiti u aplikaciji pohranjuju se u objekt, a ne u klasu. Klasa samo definira strukturu podataka i što svaki postupak ili funkcija radi.
Još jedna izvrsna značajka nastave je sposobnost nasljeđivanja svojstava i postupaka iz druge klase. Klase koje nasljeđuju svojstva drugih klasa nazivaju se potklasama. To skraćuje rad potreban za definiranje druge klase. Ako želite definirati klasu specifičnu za automobile, jednostavno možete naslijediti svojstva i postupke u klasi vozila, jer su svi automobili vozila i pokazuju iste karakteristike. Isto se ne događa s objektima, jer stvarno nema praktične upotrebe za globalno nasljeđivanje podataka objekta. Osnovna praksa programera je stvoriti potklasu i stvoriti objekt iz podrazreda.
Sažetak:
1. Objekt je instanca klase.
2. U razredu definirate sva svojstva i funkcije, dok ih upotrebljavate u objektu.
3. Klase ne sadrže podatke, dok objekt ima.
4. Možete stvoriti potklase, ali ne i potpredmete.