Objekts pret instanci
Uz objektu orientēta programmēšana (OOP) ir viena no populārākajām programmēšanas paradigmām. OOP uzmanības centrā ir domāšana par risināmo problēmu reālās pasaules elementu izteiksmē un problēmas atspoguļošana objektu un to uzvedības ziņā. Daudzām programmēšanas valodām, kas atbalsta OOP galvenos aspektus (sauktas par OOP valodām), klase ir galvenais programmēšanas rīks. Tos sauc par klasēm. Klases ir abstrakts reālās pasaules objektu attēlojums. Klasēm ir īpašības, kuras sauc par atribūtiem. Atribūti tiek ieviesti kā globālie un instances mainīgie. Nodarbības klasēs atspoguļo vai nosaka šo klašu uzvedību. Nodarbību metodes un atribūtus sauc par klases dalībniekiem. Ļoti vienkāršā izteiksmē klase ir konkrēta reālās dzīves objekta projekts vai veidne. Tātad,objekts ir atmiņas bloks (-i), ko (-us) izmanto nepieciešamās informācijas glabāšanai saskaņā ar šo projektu. Gadījums ir atmiņas bloks, kas norāda objektu.
Kas ir objekts?
Objekti ir klases instancēšanas rezultāti. Instantācija ir plāna izstrādes process un katra atribūta un uzvedības definēšana tā, lai iegūtais objekts faktiski atspoguļotu reālās dzīves objektu. Objekts ir veltīts un nepārtraukts atmiņas bloks, kas piešķirts tādas informācijas glabāšanai kā mainīgie, metodes vai funkcijas utt. Objekts tiek izveidots, izmantojot jaunu operatoru, Java programmēšanas valodā. Piemēram, ja ir klase ar nosaukumu Car, tad, lai izveidotu automašīnas klases objektu, var izmantot sekojošo.
jauna mašīna();
Šeit jaunais operators izveido objektu Automašīna un tiek atgriezta atsauce uz objektu. Jaunā objekta izveidē tiek izmantots jaunais operators kopā ar automašīnas klases konstruktoru. Objekta dzīves ilgums sākas no izsaukuma pie tā konstruktora līdz brīdim, kad tas tiek iznīcināts. Kad objekts nav norādīts, atkritumu savācējs to noņems / iznīcinās.
Kas ir instance?
Gadījums ir atmiņas bloks, kurā ir atsauce uz objektu. Citiem vārdiem sakot, instance saglabās sākuma atmiņas bloka adresi, kur objekts tiek glabāts. Patiesībā instances nosaukumu var izmantot, lai piekļūtu objekta atmiņas apgabala sākumam. Nobīdes no sākuma atmiņas aprēķina izpildlaika motors, lai mēs varētu doties uz vietu, kur tiek glabāti individuālie dati vai metodes atsauces. Pēc nokopētā Java koda var izveidot automašīnas objekta instanci.
Automašīna myCar = jauna automašīna ();
Kā minēts iepriekš, jaunais operators izveido objektu Automašīna un atgriež atsauci uz to. Šī atsauce tiek saglabāta automašīnas tipa mainīgajā myCar. Tātad, myCar ir izveidotā objekta Car gadījums.
Kāda ir atšķirība starp objektu un instanci?
Objekts ir blakus esošs atmiņas bloks, kurā tiek glabāta faktiskā informācija, kas atšķir šo objektu no citiem objektiem, savukārt eksemplārs ir atsauce uz objektu. Tas ir atmiņas bloks, kas norāda uz objekta glabāšanas vietas adresi. Divas instances var atsaukties uz vienu un to pašu objektu. Objekta un instances dzīves ilgums nav saistīts. Tāpēc instance varētu būt nulle. Kad visi gadījumi, kas norāda uz objektu, tiks noņemti, objekts tiks iznīcināts.