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 – 4. diel - Hracia kocka v C# - Zapuzdrenie a konštruktor

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
Odpovedá na Pavel Kvarda
Michal Štěpánek:29.9.2017 13:35

Protože to není klasická metoda (void), ale v podstatě je to získání hodnoty proměnné...

Odpovedať
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Pavel Kvarda
Fitnesák
Avatar
Odpovedá na Michal Štěpánek
Pavel Kvarda:29.9.2017 13:43

Moc tuhle logiku nechápu. Metoda Vratpocetsten je přece taky získání hodnoty proměné a je s velkým poč. písmenem.

Avatar
Odpovedá na Pavel Kvarda
Michal Štěpánek:29.9.2017 13:46

Pravda, pak je to asi skutečně nějaká chybka, asi se tam omylem dostalo malé písmenko...

Odpovedať
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Martin Seidl
Člen
Avatar
Martin Seidl:5.11.2017 21:03

Jen me tak napadlo jestli neni lepsi (teda aspon me to tak prislo) nejdriv udelat surovou kostku a az pak ostatni? Ja to treba moc nezvladal vsechno vtrebat :) samozrejme je to jen typ a zaroven sem prikladam muj kod pro ostatni, samozrejme super clanek jako vzdy :)

namespace Arena
{
    class Kostka
    {

        private Random random = new Random();
        private int pocetSten = 6;

        public int Hod()
        {
            return random.Next(1, pocetSten + 1);
        }
    }
}
namespace Arena
{
    class Program
    {
        static void Main(string[] args)
        {
            Kostka kostka = new Kostka();

            Console.WriteLine(kostka.Hod());
            Console.ReadKey();
        }
    }
}
Avatar
ivanp
Člen
Avatar
ivanp:26.12.2017 16:30

Pochopil som to správne? Ked v triede Kocka nieje žiadna metóda tak si C# vygeneruje metódu public Kocka() {} ??

Avatar
Odpovedá na ivanp
David Vavrečka:12.1.2018 11:27

Přesně tak, pokud ve třídě Kočka nevytvoříš konstruktor (jak ty píšeš metoda public Kocka(){ }), tak si ho C# vytvoří sám, při vytvoření instance.

Avatar
Martin Petrovaj
Tvůrce
Avatar
Martin Petrovaj:1.4.2018 12:41

Už by sa mohlo dať z článku preč

/---comennt TODO: Přejmenovat hod() na Hod() \--

v časti "Náhodná čísla", kazí to trochu dojem :-)

Odpovedať
if (this.motto == "") { throw new NotImplementedException(); }
Avatar
Dušan Kovářík:13.6.2018 1:24

Jsem nadšený! Tutoriál jde opět pěkně přímo k věci. Má to krásnou logickou posloupnost a zároveň spád! Je to opravdu jiné než některé bichle o programování, kde se tytéž ukázky kódu opakují pořád dokola jen s mírnými modifikacemi, ale současně značnou redundancí nových informací, která učební proces zbytečně zdržuje.

Avatar
Miroslav Mazal:15.8.2018 18:07

Omlouvám se, pokud se budu ptát na blbosti, ale nechápu toto: V článku je napsáno: Není dobré atribut nastavit na public, protože nebudeme chtít, aby nám někdo mohl již u vytvořené kostky měnit počet stěn. Ale přitom si počet stěn nastavujeme zvenčí (neboli v public) pomocí proměnné. Není to protimluv?

Avatar
krepsy3
Tvůrce
Avatar
Odpovedá na Miroslav Mazal
krepsy3:15.8.2018 22:46

Není :) Chápu, o co ti jde, nicméně podívej se na to takto - při vytváření kostky pro naší hru jí dáme počet stěn - předáme tento počet jako parametr v konstruktoru - a konstruktor je pochopitelně veřejný, jinak bychom si kostku nemohli vytvořit vůbec. Tím nám vznikne kostka s počtem stěn, který jsme chtěli, a nyní již nechceme, aby bylo jakkoliv možné kostku zvenčí, tedy akcí jiného objektu, ovlivnit, tedy jí změnit počet stěn (ale cokoliv jiného). Tedy přesně tak, abychom zachovali ono zapouzdření, o kterém se již mluvilo!

Tedy - v okamžiku zahájení činnosti aplikace si vytvoříme kostku, podle naší představy, tedy se správným počtem stěn. Dále už ale s kostkou budeme jen házet, a necháme ji, aby nám dávala náhodná čísla, dle počtu stěn. Ale už jí nikde nebudeme počet stěn znovu nastavovat. Je to srozumitelné?

Odpovedať
Programátor je stroj k převodu kávy na kód.
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 159.