Java - staticke a nestaticke metody

Programovacie jazyky, rady, poradňa...
martinoo93
Novice
Novice
Príspevky: 1
Registrovaný: 16 nov 2012, 10:12

Java - staticke a nestaticke metody

Príspevok od používateľa martinoo93 »

Caute chlapi, potreboval by som poradit prosim ohladne Javy. Teraz sa ucim prvy rok Javu a mam problem s pochopenim kedy sa pouziva nestaticka metoda a ked metoda instancie - objektu? Viem ze ked je static tak je metoda triedy ale neviem kedy ktoru pouzit.
Vdaka :)
mirak2
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 6719
Registrovaný: 18 sep 2005, 13:44
Bydlisko: Prague, CZE / Kosice, SVK

Re: Java - staticke a nestaticke metody

Príspevok od používateľa mirak2 »

vies po anglicky? pozri sa na stackoverflow.com
nevies po anglicky? daleko sa nedostanes... ale pri tomto probleme si poloz jednu otazku: ma zmysel, aby metoda bola volana, aj ked este nebol vytvoreny ziaden objekt tej triedy? ak ano, tak ma byt staticka. proste metody, ktore nezavisia od konkretnej instancie objektu, maju byt staticke
paralen
Light Star
Light Star
Príspevky: 267
Registrovaný: 02 máj 2006, 15:15

Re: Java - staticke a nestaticke metody

Príspevok od používateľa paralen »

pozri si triedu Math (a jej staticke metody). Ziadna metoda tam nevyuziva instancne premenne. To znamena, ze metoda spracuje parameter a vrati vysledok, nic ostatne nemeni (vlastnosti objektu a podobne). Taktiez by bolo zbytocne pre tuto triedu vytvarat instancie, kedze je to vlastne len akasi "zbierka metod". To sa da aplikovat vseobecne.
Itachy
Amateur
Amateur
Príspevky: 32
Registrovaný: 21 aug 2012, 20:26

Re: Java - staticke a nestaticke metody

Príspevok od používateľa Itachy »

Tak len tak na okraj ti to vysvetlím predpokladám že vieš čo sú statické funkcie. Niekedy napr. ako je vyššie napísane nikdy na nevytvára objekt Math používajú sa len jej statické funkcie ale tak polopate vezmi si že si vytvoril objekt kalkulačka, kt. má 250 funkcií a ty chceš len funkciu spočítaj. Načo by s vytváral tak rozsiahly objekt, kt. zabere toľko miesta v pamäti. Jednoducho budeš mať v kalkulačke statickú funkciu spočítaj... z toho plinie otázka prećo nevytvárať všetly funkcie statické-> pretože keď máš napr. objekt kalkuľačka a chceš GUI tak jednoduchy vytvoríš gui a len pospájaš tlačidlá s funkciami toho jedného objektu, jednoducho sa to nerobí v objektoch, kt. používaš často

Itachy
Napísať odpoveď