10. prednáška (trieda Film)

Moderátor: FeroG

<<

Dominika

Príspevky: 24

Registrovaný: Ned Okt 14, 2012 8:58 am

Poslať Str Dec 12, 2012 5:27 pm

10. prednáška (trieda Film)

Ahojte mala by som otazku z 10.prednasky : v triede Film mame metodu naplnFilm , s ktorou potom suvisia metody z ostatnych podtried : public void FilmV...(Scanner citac) .... chcem sa opytat preco v tych metodach je ako prvy prikaz naplnFilm(citac); a nie naplnFilm(scanner); ..... dakujem.
<<

PainMaster

Príspevky: 689

Registrovaný: Uto Okt 06, 2009 12:50 pm

Bydlisko: 3.Kanal,4.Chodba

Poslať Štv Dec 13, 2012 9:08 am

Re: 10. prednáška (trieda Film)

1219440110 píše:Ahojte mala by som otazku z 10.prednasky : v triede Film mame metodu naplnFilm , s ktorou potom suvisia metody z ostatnych podtried : public void FilmV...(Scanner citac) .... chcem sa opytat preco v tych metodach je ako prvy prikaz naplnFilm(citac); a nie naplnFilm(scanner); ..... dakujem.

Lebo sa premenna pravdepodobne vola citac a je to objekt typu scanner. Ak by sa premenna na vstupe volala scanner, tak by tam bola :-)
We weren't born to follow
You gotta stand up for what you believe!

Ps: Za gramatiku ma neopravovat! Dakujem!
<<

Dominika

Príspevky: 24

Registrovaný: Ned Okt 14, 2012 8:58 am

Poslať Štv Dec 13, 2012 4:37 pm

Re: 10. prednáška (trieda Film)

Ano to vidim , len nechapem preco to nie je Scanner , kt. je definovany v metode naplnFilm a ten sa vola scanner
<<

gursky

Site Admin

Príspevky: 353

Registrovaný: Pon Nov 13, 2006 3:32 pm

Poslať Štv Dec 13, 2012 10:02 pm

Re: 10. prednáška (trieda Film)

Premenné v hlavičkách metód - teda parametre sú naplnené pri zavolaní metódy (viď. 1. prednáška). Konkrétne tuto v triede ZoznamFilmov v metóde nacitajSa(File file) sa vytvorí objekt triedy Scanner (nazvime ho Pišta) a referencia naňho sa vloží do premennej citac. V tejto metóde sa neskôr volá konštruktor niektorej z tried FilmNaDvd, FilmNaPaske alebo FilmVPocitaci, ktorý dostane ako vstup referenciu na Pištu. Keď sa teda spustí konštruktor napr. triedy FilmNaDvd, tak v jeho lokálnej premennej citac je umiestnená referencia Pištu. Takže teraz už majú na Pištu referenciu dve premenné: citac v metóde nacitajSa v zozname filmov a (uplne iná, aj keď rovnako pomenovaná) premenná citac v konštruktore triedy FilmNaDvd.

Teraz tento konštruktor zavolá metódu naplnFilm, ktorú sa naučil od triedy Film. Táto metóda naplnFilm dostane opäť referenciu na Pištu. Keď sa teda spustí metóda naplnFilm, ktorej kód leží v triede Film (a pozná ho teda aj FilmNaDvd) tak do jej parametra scanner sa uloží referencia na Pištu. Takže teraz už majú referenciu na Pištu tri premenné: citac v metóde nacitajSa v zozname filmov, premenná citac v konštruktore triedy FilmNaDvd a tiež premenná scanner v metóde naplnFilm.

Po skončení metódy naplnFilm premenná scanner zaniká a referenciu na Pištu už majú uloženú zasa len 2 premenné: citac v metóde nacitajSa v zozname filmov a premenná citac v konštruktore triedy FilmNaDvd. Keď sa potom skončí aj konštruktor, tak zaniká aj premenná citac, ktorú používal konštrutor a Pištu už pozná iba premenna citac v zozname filmov.
"Microsoft is not the answer. Microsoft is the question. NO is the answer." - Erik Naggum
<<

Dominika

Príspevky: 24

Registrovaný: Ned Okt 14, 2012 8:58 am

Poslať Štv Dec 13, 2012 10:06 pm

Re: 10. prednáška (trieda Film)

Dakujem. :)

Späť na PAZ1a

Kto je on-line

Užívatelia prezerajúci fórum: Žiadny registrovaný užívateľ nie je prítomný a 1 hosť

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software.
Slovenský preklad.