Izpitno vprašanje RAČ2PRA 1100

Iz MaFiRaWiki

Vprašanje

Razlika med objektnimi in statičnimi metodami.


Odgovor

Statična metoda ima dostop do statičnih komponent. Objektna metoda ima dostop do objektnih komponent objekta, na katerem je klicana in do statičnih komponent. Statične komponente so vsebovane v razredu, objektene (nestatične) pa v objektih. Vsak objekt vsebuje svojo kopijo objektnih komponent, vsaka statična komponenta pa vedno obstaja v eni sami kopiji.

Statične metode: Vsaka metoda vrača rezultat in sprejme argumente. Ko metodo napišemo vedno povemo, kakšnega tipa je rezultat, ter kakšna so imena in tipi argumentov.

Objektne metode: metodam, ki niso statične pravimo objektne metode.


Primer: S statično metodo bi sešteli dve kompleksni števili takole:

Kompleksno c = vsota_static(a, b); 

Z objektno metodo pa:

Kompleksno c = a.vsota(b);


Ta način izraža osnovno načelo objektnega programiranja. Objekt a vsebuje metodo vsota. Objekt vsebuje komponente in objektne metode. Komponento re v objektu a pokličemo z a.re.


Glej tudi:

Statična metoda: http://wiki.fmf.uni-lj.si/wiki/Stati%C4%8Dna_metoda

This: http://wiki.fmf.uni-lj.si/wiki/This

Osebna orodja