Avatar
tomkrata
Člen
Avatar
tomkrata:8.12.2013 20:58

Jak vytvořit executable java soubor s více třídama?

 
Odpovědět 8.12.2013 20:58
Avatar
Odpovídá na tomkrata
Michal Žůrek (misaz):8.12.2013 21:01

si si jistý, že toto patří do cekce pro .NET?

Nahoru Odpovědět 8.12.2013 21:01
Nesnáším {}, proto se jim vyhýbám.
Avatar
tomkrata
Člen
Avatar
tomkrata:8.12.2013 21:03

Tak to se omlouvam ale odpovite mi? :D

 
Nahoru Odpovědět 8.12.2013 21:03
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na tomkrata
David Čápka:8.12.2013 21:04

Ten dotaz je také dost divný. JAR ti vygeneruje IDE, kolik máš v aplikaci tříd je jedno, jen jedna je spustitelná metodou main.

Nahoru Odpovědět 8.12.2013 21:04
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na tomkrata
Kit:8.12.2013 21:07

Zabalíš výsledné třídy do jednoho souboru .jar

David Čápka Můžeš vlákno přesunout?

Editováno 8.12.2013 21:08
Nahoru Odpovědět 8.12.2013 21:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
tomkrata
Člen
Avatar
tomkrata:8.12.2013 21:12

Jo moc děkuju.

 
Nahoru Odpovědět 8.12.2013 21:12
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:8.12.2013 21:12

Vlákno bych bez keců přesunul, kdybych měl na to příslušná práva a Petr Nymsa jistě také.

Nahoru Odpovědět 8.12.2013 21:12
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Petr Nymsa
Redaktor
Avatar
Odpovídá na Kit
Petr Nymsa:8.12.2013 21:15

Hotovo :) a chtělo by to rozšířit práva no :)

Nahoru Odpovědět 8.12.2013 21:15
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:8.12.2013 21:25

Metodu main() dávám do každé třídy. Bez ní bych ty třídy nemohl samostatně spouštět a testovat.

Nahoru Odpovědět 8.12.2013 21:25
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Kit
Jan Vargovský:8.12.2013 21:47

Odkdy k testum potřebuješ Main metodu ?

 
Nahoru Odpovědět 8.12.2013 21:47
Avatar
Kit
Redaktor
Avatar
Odpovídá na Jan Vargovský
Kit:8.12.2013 21:54

A jak mám tu třídu spustit bez metody main()? To bych ty testy musel psát mimo třídu. Nemohl bych pak testovat privátní atributy a metody. Takhle to mám všechno hezky pohromadě v jednom zdrojáku. Každou třídu si hezky otestuji přímo v editoru klávesou <F9>.

Nahoru Odpovědět  ±0 8.12.2013 21:54
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Jan Vargovský
Kit:8.12.2013 22:41

Tady máš malou ukázku:

public class Trojuhelnik {
    public static class Test {
        public static void main(String[] args) {
            Trojuhelnik abc = new Trojuhelnik(3, 4);
            assert abc.a == 3 : "Chyba 'a' v konstruktoru";
            assert abc.b == 4 : "Chyba 'b' v konstruktoru";
            assert abc.prepona() == 5.0 : "Chyba metody prepona()";
        }
    }

    private int a, b;

    Trojuhelnik(int a, int b) {
        this.a = a;
        this.b = b;
    }

    double prepona() {
        return Math.sqrt(a*a + b*b);
    }
}

Po kompilaci se mi automaticky spustí Trojuhelnik$Test.

Soubor Trojuhelnik$Tes­t.class do JARu nedávám, protože tam není k ničemu potřebný.

Nahoru Odpovědět 8.12.2013 22:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Silvinios
Redaktor
Avatar
Odpovídá na Kit
Silvinios:8.12.2013 23:19

Doporučuji použít knihovnu JUnit. Unit testy vytvořené pomocí Junit dokáže spustit každé rozumné IDE. Unit testy se záměrně píší do samostatných tříd. Testovat private metody nemá smysl. Testuje se vnější rozhraní.

 
Nahoru Odpovědět  +1 8.12.2013 23:19
Avatar
Kit
Redaktor
Avatar
Odpovídá na Silvinios
Kit:9.12.2013 0:06

O knihovně JUnit vím. IDE nepoužívám. Unit testy záměrně píšu do stejné třídy. Testuji vše, co testovat potřebuji. Nemusím pak ladit.

Nahoru Odpovědět 9.12.2013 0:06
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 14 zpráv z 14.