

java - vytvořte novou instanci třídy
Mohlo by být toto Vytvořte novou instanci třídy ObjectOutputStream, konstruktoru předejte jako parametr instanci FileOutputStream.
takto: ObjectOutputStream = new ObjectOutputStream(FileOutputStream);
A todle na instanci ObjectOutputStream zavolejte metodu writeObject a jako parametr jí předejte atribut zaznamy.
takto: ObjectOutputStream(writeObject(), zaznamy);
Moc díky za odpověď. A jestli to tak nemá být, tak jak tedy?
Zmena predmetu, pôvodne: java (los)
1. Chýba ti tam názov premennej pre tú inštanciu (podľa mennej konvencie názov premennej pre inštanciu začína malým písmenom):
ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream);
2. Volanie metódy inštancie vyzerá takto:
objectOutputStream.writeObject(zaznamy);
děkuji za odpověď
...když volám metodu aktualizujSeznam lze to napsat takto nebo to je kravina?
private void aktualizujSeznam(){
}
Jak by se dalo napsat rozmezí dat na - 1 měsíc až + 1 měsíc od dneška, když k tomu mám tyto příkazy: pro aktuální datum toto Calendar.getInstance() a pro příčtení a odečtení data tento calendar.add(Calendar.MONTH, -1); a calendar.add(Calendar.MONTH, +1);
1. To, čo si napísal, nie je volanie metódy, ale jej deklarácia, resp. definícia. Keďže je private, tak ju môžeš volať len v metódach triedy, v ktorej si ju deklaroval. Ak ju chceš volať z vonku, musíš ju deklarovať ako public.
2. Rozsah dátumov:
Když chci vytvořit metodu toString, která vrátí textovou reprezentaci záznamu v podobě „datum: obnos“ a napíšu to takto: public String toString() {
return datum = obnos; ,tak to je asi špatně, když to je podtržený
Co podle tebe má znamenat tenhle výraz?
netušim co tim je myšleno
Vždyť jsi to psal, tak bys měl vědět, co je tím myšleno.
napsal, protože jsem nevěděl vůbec co tam vrznout..
Takže stále jenom střelba naslepo bez nejmenšího tušení, co vlastně děláš. Stejně jako před 3 týdny.
jak u čeho
..a todle zavolejte metodu odeberZaznam, jako parametr jí předejte vybraný záznam, který načtěte pomocí metody getSelectedValue.
dá se to zapsat takto: HlavniOkno odeberZaznam = new HlavniOkno(getSelectedValue); asi zase blbost co
Naprostá. Tusíš vůbec, co je třída, co je metoda, co je parametr...?
zhruba
Tohle nemůžeš vědět zhruba, to jsou naprosto základní pojmy. Něco jako by ses učil na zedníka a nevěděl, co je cihla nebo zeď.
třída je třeba to HlavniOkno metoda nactiData() a parametr je něco v závorce
teď mě řekneš jak to má být, třeba to z toho už pochopím
odeberZaznam(getSelectedValue());
Našel by někdo v tomto kódu ještě 3 chyby, já jsem našel jenom 2
Pridal som ti tam zvýraznenie syntaxe a hneď je vidno tri chyby (viď riadky ("vteřiny", "grafu" a "třída,"). Riadkový komentár (dve lomítka) je ukončený znakom nového riadku a všetko na ďalšom riadku sa už berie ako kód, ktorý sa kompiluje. Keď chceš s komentárom pokračovať na ďalšom riadku, tak na tom ďalšom riadku musíš znova použiť tie dve lomítka, ináč tam budeš mať syntaktickú chybu.
Tiež odporúčam používať odsadzovanie.
Proč mám celej tento zápis podtrženej, to tam je tolik chyb? Nemělo by asi být
try { <existující kód v metodě> } catch (Exception ex) { <kód pro obsluhu chyby>
jFileChooser.showSaveDialog(this);
FileOutputStream = new FileOutputStream(dialog.getSelectedFile());
close();
ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream);
close();
objectOutputStream.writeObject(zaznamy);
JOptionPane.showMessageDialog(ex.getMessage());
}
}
Počuj, v každom normálnom IDE sa ti zobrazí presné chybové hlásenie po tom, ako vyjdeš myšou na podčiarknutý kód. Okrem toho, všetky chyby sa zobrazujú na jednom mieste, kde ich vidíš zoradené. Takže ak nevieš, v čom je problém, tak skopíruješ to hlásenie do Googla a prídeš na to sám.