Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 2. diel - Prvá objektová aplikácia v Jave - Hello object world

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Kit
Tvůrce
Avatar
Odpovedá na Luboš Běhounek Satik
Kit:15.10.2013 15:43

Jako vtip dobré, ale nejlepším receptem proti prasení je TDD. IDE hraje jen minimální roli a záleží jen na kvalitě programátora, zda je ta role pozitivní či negativní.

Odpovedať
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovedá na Kit
Luboš Běhounek Satik:15.10.2013 18:49

<irony>Ano, TDD je bůh a prasokód už pak člověk nenapíše.</irony>

Odpovedať
https://www.facebook.com/peasantsandcastles/
Avatar
lm3951
Člen
Avatar
lm3951:11.11.2013 15:35

ahoj,

pre mna najdolezitejsia vec v tomto clanku vysvetlena nie je.
Kde musi byt metoda main, zdoraznujem neviem kde MUSI byt nie kde moze.
Takze na zaklade pokusov viem, ze ked ju nedam do triedy HelloObjects tak to nefunguje, v zdravic nemusi byt. Je to tak naozaj ? Ze v triedach ktore sluzia len na definiciu main netreba. Jedine kde musi byt je cast kde je program v ktorom vytvaram objekty /instancie tried ? t.j v tomto pripade v triede HelloObejcts ? Takze mozem mat 1000 tried a main tam nebude, ale v programe kde to vsetko instancujem tak musi ? alebo ako je to presne.
dakujem.

Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovedá na lm3951
Jan Vargovský:11.11.2013 15:51

Je jedno kde je, prostě někde v těch souborech musí být static void Main(string[] args)

Avatar
lm3951
Člen
Avatar
Odpovedá na Jan Vargovský
lm3951:11.11.2013 17:10

hmm nieco som nasiel, podla toho ma byt v tej triede, ktorou sa spusta cely program. Ze moze byt v hociktorej triede mi pride ako dost nestastne riesenie, to potom nahodou nejaku triedu proste nepouzijes /vymazes/ a zrazu ti prestane cely kod fungovat. Ked tam mas 50 tried to musi byt asi dost bordel ak by bola metoda main v nejakej nepodstatnej.
Neverim, ze ludia co pisu aplikacie kde je viacej tried tak nemaju v tomto nejaky system.

Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovedá na lm3951
Jan Vargovský:11.11.2013 17:19

Nevím zaco to i--, ale obhájím to co jsem řekl. Máš v projektu 100 tříd a je jedno kde je metoda Main, někde v těch souborech musí být. Platí ale, že může být jen jedna a je celkem logické, že když voláš nějaké metody z instancí tak se program musí vrátit do té hlavní metody a ta je vždycky Main.

A proč problém ? Od toho máš IDE, aby ti pomáhalo i kdybych ti schoval mainmetodu mezi miliardu tříd, měl bys schopen využít IDE tak, aby jsi jí našel do 5ti sekund.

Defaultně je třída Program a metoda Main. Není důvod to měnit a dávat to někde jinde.

Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na lm3951
David Hartinger:11.11.2013 17:24

Proč by měla být metoda main popsaná v objektovém seriálu, když s tvořenými objekty vůbec nesouvisí? Main je základní metoda, kterou ti vygeneruje IDE u nového projektu a je tam vždy od začátku a vždy jen jedna. Pokud ti to není jasné, udělej si seriál se základy syntaxe Javy, který tomuto seriálu předchází.

Odpovedať
New kid back on the block with a R.I.P
Avatar
lm3951
Člen
Avatar
Odpovedá na David Hartinger
lm3951:11.11.2013 17:35

ja som si to cele presiel a urobil som si aj vsetky priklady.
To, ze nieco mi vygeneruje IDE je fajn, ale ked neviem ako to presne funguje nie je to pre mna pochopitelne riesenie specialne pri oop.
Predsa aj ked to budem pisat v notepade tak musim vediet co robim.

takze este raz.
Ak v priklade, ktory je hned na zaciatku dam metodu main do Zdravic.java tak eclips mi vyhadzuje chybu. Ak chcem, aby to zbehlo tak metoda main musi byt v HelloObjects.java a v nej vytvoreny objekt zdravic.
Takze v tomto pripade mi nejak nefunguje ani to, ze moze byt hocikde.

Avatar
Kit
Tvůrce
Avatar
Odpovedá na lm3951
Kit:11.11.2013 17:40

Metodu main() mám v každé třídě. Zjistil jsem, že je to tak nejlepší.

Odpovedať
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovedá na lm3951
Jan Vargovský:11.11.2013 17:42

Tohle je objektový tutoriál pro lidi, kteří znají základní věci. Je jedno v jaké třídě je ta metoda Main, pak ale musíš zbytek programu dohodit do společně s tou metodou. Když si snad přejmenuješ název vygenerované třídy, kde je metoda main tak program nefunguje?

Btw, co třeba říct jakou chybu?

Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 196.