• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

Objektové programovanie

Started by tino8, 28.09.2009, 05:12:18

« predchdzajce - alie »

Agamemnon

pastuj aj chyby a exceptions... ovela lahsie sa tak zisti, co sa deje... pripadne ich citaj - zvykne to tam byt velmi presne popisane...

RoomImpl implementuje Room?
ma Room getEast()?
je typ parametra setCurrentRoom a navratovej hodnoty currentRoom.getEast rovnaky?
etc
All code is crap.

42

dEVIANT

#126
metoda setCurrentRoom nastavi private Room currentRoom na ten parameter typu Room...a currentRoom.getEast je public Room...ciže vráti rovnaký typ...

Exception in thread "main" java.lang.NullPointerException
       at commands.East.execute(East.java:31) -         Room currentRoom = game.getCurrentRoom();
       at textovka.Parser.getCommand(Parser.java:49) -     list.get(i).execute(null); // vyvolá metódu execute danej triedy/príkazu/ čo mám v liste
       at textovka.GameImpl.play(GameImpl.java:37) -      prikaz.getCommand(line);
       at textovka.Main.main(Main.java:35) -   hra.play();
Java Result: 1

mám pocit, že tam bude nejaká little primitívna chyba...či?...
Nie je nič nákazlivejšie ako rozhodný a presvedčením sa vyznačujúci život.

Peterray

Chcem sa spýtať treba robiť aj úvodné menu, čo je v doplňujúcich úlohách? Vlastne treba robiť aj tie doplňujúce úlohy? Či ako to je ..

Otázka na Mireka.

mirek

Quote from: Peterray on  14.11.2009, 04:59:49
Chcem sa spýtať treba robiť aj úvodné menu, čo je v doplňujúcich úlohách? Vlastne treba robiť aj tie doplňujúce úlohy? Či ako to je ..

Otázka na Mireka.

ano. je to spomenute uz aj v poznamke pri implementovani prikazu KONIEC - ze KONIEC neurobi system.exit(), ale skoci do uvodneho menu.
So say we all!

mirek

Quote from: dEVIANT on  13.11.2009, 22:09:04
metoda setCurrentRoom nastavi private Room currentRoom na ten parameter typu Room...a currentRoom.getEast je public Room...ciže vráti rovnaký typ...

Exception in thread "main" java.lang.NullPointerException
        at commands.East.execute(East.java:31) -         Room currentRoom = game.getCurrentRoom();
        at textovka.Parser.getCommand(Parser.java:49) -     list.get(i).execute(null); // vyvolá metódu execute danej triedy/príkazu/ čo mám v liste
        at textovka.GameImpl.play(GameImpl.java:37) -      prikaz.getCommand(line);
        at textovka.Main.main(Main.java:35) -   hra.play();
Java Result: 1

mám pocit, že tam bude nejaká little primitívna chyba...či?...


hmm... a ten parser ti naozaj vratil referenciu? nevratil nahodou null? a  nad tym null-om nevolas potom execute()?
So say we all!

dEVIANT

Mám ďalší asi little problém. Predmety v hre ktoré implementujú rozhranie Moveable je možne vložiť do inventára.

Ciže pri metóde execute triedy Get ktorá vloží vec do inventára musím overiť či je nositeľná.

Existuje nejaká podmienka/metóda/, ktorá zistí či daná trieda implementuje to rozhranie?Ak áno aká je syntax? googlil som ale nič som nenašiel :/

Alebo to musím spraviť tak že do rozhrania Moveable dám napr. public boolean getMove(),vo všetkých nositeľných predmetoch vytvorím premennú moveable,v konštruktore ju nastavím na true a implementovaná metóda getMove vráti true a to budem overovať v tej metóde execute triedy Get? Bude to fungovať aj takto?či na to idem zle?

snáď som to napísal zrozumiteľne   bk


Nie je nič nákazlivejšie ako rozhodný a presvedčením sa vyznačujúci život.

mirek

Quote from: dEVIANT on  15.11.2009, 21:02:06
Mám ďalší asi little problém. Predmety v hre ktoré implementujú rozhranie Moveable je možne vložiť do inventára.

Ciže pri metóde execute triedy Get ktorá vloží vec do inventára musím overiť či je nositeľná.

Existuje nejaká podmienka/metóda/, ktorá zistí či daná trieda implementuje to rozhranie?Ak áno aká je syntax? googlil som ale nič som nenašiel :/

Alebo to musím spraviť tak že do rozhrania Moveable dám napr. public boolean getMove(),vo všetkých nositeľných predmetoch vytvorím premennú moveable,v konštruktore ju nastavím na true a implementovaná metóda getMove vráti true a to budem overovať v tej metóde execute triedy Get? Bude to fungovať aj takto?či na to idem zle?

snáď som to napísal zrozumiteľne   bk

pozri sa na klucove slovo instanceof
So say we all!

dEVIANT

Nie je nič nákazlivejšie ako rozhodný a presvedčením sa vyznačujúci život.

sshadoww

pozrel som si tie cvika a su podla mna tak dobre spravene ze aj ked som 4tak a mam kopec inej prace nedalo mi neskusit si spravit tu hru

bolo by fajn mat v Backpack aj take nieco ako: -  public List getList()  :puf:

myslim ze mirek odviedol fakt dobru pracu   :)

mirek

Quote from: sshadoww on  16.11.2009, 01:34:53
pozrel som si tie cvika a su podla mna tak dobre spravene ze aj ked som 4tak a mam kopec inej prace nedalo mi neskusit si spravit tu hru

bolo by fajn mat v Backpack aj take nieco ako: -  public List getList()  :puf:

myslim ze mirek odviedol fakt dobru pracu   :)

diky za pochvalu ;) az sa nemozem neusmievat, ze aj ti, co uz nemusia, si to radi prejdu ;) len potvrdzujes, ze sme sa vydali dobrym smerom ;) a ak sa tu este objavis, tak skus porovnat - ako to bolo, ked ste to riesili vy (vtedy este nebola taka paradna ta kniznica) a ako to je teraz.

ku backapku - ano - mohlo to tam byt, ale nie je - viacmenej je to zamer typu - vyrieste si to po svojom. lebo jedno riesenie moze byt pomocou navrhovanej metody getList() a druhe moze byt napriklad upravou triedy a implementovanim rozhrania (teraz neviem, ako sa vola), pomocou ktoreho budes moct z backpack-u spravit kolekciu a aplikovat na nu foreach. takze - toto je naozaj na riesiteloch, ako sa s tym popasuju.
So say we all!

sshadoww

#135
cvika som mal s Ing. Binasom   ;D takze boli celkom fajn

materialy vsak dobre podla mna neboli no tie bleskovky su dobra vec  :)

teraz sa to da vsekto krasne a rychlo pochopit (princip OOP)

mirek

Quote from: sshadoww on  16.11.2009, 02:02:06
cvika som mal s Ing. Binasom   ;D takze boli celkom fajn

materialy vsak dobre podla mna neboli no tie bleskovky su dobra vec  :)

si mal s binasom? no - nezavidim ;) ale pamatam, ze vtedy tie materialy boli este kadejake - ale to bolo akurat prelomove obdobie veduce ku sucasnemu stavu.

skor by ma zaujimalo zadanie - vtedy a dnes. ze ci vidis nejaky posun, ked si si ho teraz dokazal spravit, aj ked si nemusel ;) nazor pamatnika ma velmi zaujima ;)
So say we all!

leniocka

#137
jj aj ja si myslim ze je to dobre napisane  :thumbs-up: velmi podrobne... dokonca az tak, ze ked som narazila na tu zalezitost s backpackom som neverila tomu, ze to je na mne to vyriesit  ;D a save a load je uplne jednoduche (nie ze by to bolo az take tazke spravit kompletne... ) ale tak oproti serializacii a prace so subormi urcite  :) ked som sa teraz pozrela na svoje zadanie, ani som poriadne nevedela, kde co hladat, lebo mam dost neprehladny kod, kedze som to robila este ked neboli ziadne navody. teraz ako stvrtacka som to robila mozno 1 den cisteho casu

sshadoww

ked sa mozem opytat: co vas inspirovalo k tomu ze sucastou cvika je aj BlueJ? ja som bol na obhajobe jednej bakalrky a tam ma BlueJ zaujal

mirek

Quote from: leniocka on  16.11.2009, 02:35:51
jj aj ja si myslim ze je to dobre napisane  :thumbs-up: velmi podrobne... dokonca az tak, ze ked som narazila na tu zalezitost s backpackom som neverila tomu, ze to je na mne to vyriesit  ;D a save a load je uplne jednoduche (nie ze by to bolo az take tazke spravit kompletne... ) ale tak oproti serializacii a prace so subormi urcite  :) ked som sa teraz pozrela na svoje zadanie, ani som poriadne nevedela, kde co hladat, lebo mam dost neprehladny kod, kedze som to robila este ked neboli ziadne navody. teraz ako stvrtacka som to robila mozno 1 den cisteho casu

lenka? tebe som recenzoval bakalarku?
So say we all!

leniocka


mirek

Quote from: sshadoww on  16.11.2009, 02:49:53
ked sa mozem opytat: co vas inspirovalo k tomu ze sucastou cvika je aj BlueJ? ja som bol na obhajobe jednej bakalrky a tam ma BlueJ zaujal

no - hladali sme moznosti, ako v objektovom zacat s objects first approach. majkrosoft to odkukal a implementoval to do visualka, ale neodkukal to uplne - niektore veci tam nepracuju spravne (riadenie viditelnosti a nefunguju graficke primitivy). ale ked sme presli na javu, tak to bolo uplne jasne, ze ideme do bluej. rozmyslali sme este o nejakom vlastnom rieseni v style - bluesharp, ale... to chce zasa cas. a samozrejme - su aj plany, ako dalej. uvidime, ako sa podaria ;)
So say we all!

mirek

Quote from: leniocka on  16.11.2009, 03:11:23
ano :)

nooo... neviem, ci este s veducim bakalarky nieco riesis, ale mali sme plan sadnut spolu na kofolu. takze sa asi este stretneme ;) kedze - ta praca bola taka fajna ;) mame totiz plan, ako to cele potiahnut este o nieco dalej a radi by sme ta zapojili. ale to ti uz asi aj spominal ;)
So say we all!

leniocka

no uz som sa ho pytala na diplomovku takze mam nejaku predstavu  ;) xcela som sa aj pozriet na jeden plugin do blueJ, cez ktory sa daju robit aj tutorialy, ci by sa to nedalo tiez nejak pouzit, len zatial som nemala velmi na to cas

mirek

Quote from: leniocka on  16.11.2009, 03:17:46
no uz som sa ho pytala na diplomovku takze mam nejaku predstavu  ;) xcela som sa aj pozriet na jeden plugin do blueJ, cez ktory sa daju robit aj tutorialy, ci by sa to nedalo tiez nejak pouzit, len zatial som nemala velmi na to cas

no super. ono - co sa tyka bluej - chcelo by to upravit na nieco take, ze by sa dal kod pisat v externom editore - teda nejaku lepsiu spolupracu napr. s netbeans. aktualny plugin pre netbeans je totiz dost mizerny :-( nevyuziva vsetok potencial bluej ako takeho. stacilo by, aby ho bolo mozne pouzit na pisanie kodu a potom v okne bluej kliknut len na compile. to ale nie je mozne, nakolko v bluej treba otvorit kod, urobit zmenu, ulozit a az potom zaregistruje, ze v kode k zmene doslo. ked dotiahnem materialy toho roku, tak by som sa na to chcel pozriet, ale ak sa chces venovat tejto oblasti dalej, tak je to tiez jeden z nametov ;)

takze - tesi ma, ze sa "tejto oblasti" stale venujes ;) takze - urcite sa este uvidime ;)
So say we all!

leniocka

no ked mate sucasne otvoreny blueJ a netbeans a v oboch mate otvoreny rovnaky projekt, tak ked spravite zmeny v netbeans prejavia sa v blueJ. tak som si robila tie prve cvika so shapes, lebo sa mi nexcelo pisat v tom editore pre bluJ  :embarassed: len niekedy sa zmeny neprejavili v okamihu

mirek

Quote from: leniocka on  16.11.2009, 03:28:41
no ked mate sucasne otvoreny blueJ a netbeans a v oboch mate otvoreny rovnaky projekt, tak ked spravite zmeny v netbeans prejavia sa v blueJ. tak som si robila tie prve cvika so shapes, lebo sa mi nexcelo pisat v tom editore pre bluJ  :embarassed: len niekedy sa zmeny neprejavili v okamihu

no sak prave to, ze sa neprejavia. editor asi posiela nejaku spravu (vola nejaku metodu) hlavneho okna bluej, ze tento subor sa zmenil. a mozno by stacilo sledovat zmeny nad suborom, ci sa nahodou nezmenil. nuz - to je asi dan zavislosti na tom ich builtin editore moe (tusim sa tak vola).
So say we all!

leniocka

cize by bolo dobre spravit nejaky taky program ako bluej? alebo plugin do netbeans? doc. Poruban spominal aj testovanie projektov alebo zadanie robene dekrementalnym sposobom, kde by sme sa snazili zaclenit aj co najviac navrhovych vzorov, lebo tie sa velmi rychlo prebrali za nasich cias a vela som z toho nemala

mirek

Quote from: leniocka on  16.11.2009, 03:38:47
cize by bolo dobre spravit nejaky taky program ako bluej? alebo plugin do netbeans? doc. Poruban spominal aj testovanie projektov alebo zadanie robene dekrementalnym sposobom, kde by sme sa snazili zaclenit aj co najviac navrhovych vzorov, lebo tie sa velmi rychlo prebrali za nasich cias a vela som z toho nemala

nie - netreba robit nahradu za bluej, len niektore veci upravit v nom, resp. dorobit formou pluginov.

no a dekrementalne zadanie - ano. aj take nieco mame v plane ;) nuz - treba veru sadnut ;) napady uz zbierame asi vsetci, len treba asi dohodnut postup ;) teba caka v lete semestralny projekt, takze to je asi vhodne miesto na rozbehnutie, ked mozeme tym napadom dat trosku realnu tvar.
So say we all!

leniocka

uz sa tesim  :banana_guitar: ta bakalarka ma dost chytila, takze som rada, ze v tom budem moct pokracovat :) myslite, ze blueJ nejak pomohol pri vyucbe? naozaj sa chapu zaciatocnikom tie suvislosti lepsie alebo to este neviete zhodnotit?