Diskuze: Pojekt do školy - prosím o radu nebo tipy
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.


Počkej a kde máš teda problém?
Vždyť všechno funguje v pořádku. Zkoušel jsem si to a instance skutečně
přidáváš do listu (mimochodem neříkej nikde, že pracuješ na addBlocku
nebo tě zažalují za
porušení autorských práv:))
No a pak z toho listu vypíšeš instance.
Jestli chceš vypsat konkrétní texty, které do té instance vložíš, tak
nejdřív musíš vytvořit gettery ve třídě Block. Potom vytvoř soukromou
metodu ve třídě Control panel, která by mohla vypadat nějak takhle:
private void output(Block block) {
String result = "Instance " + block + ":\n";
if (block.getTemplateName() != null) {
result += "Block template name = " + block.getTemplateName() + "\n";
}
if (block.getBlockName() != null) {
result += "Block name = " + block.getBlockName() + "\n";
}
if (block.getStrategyName() != null) {
result += "Block strategy name = " + block.getStrategyName() + "\n";
}
if (block.getSource() != null) {
result += "Block source = " + block.getSource();
}
JOptionPane.showMessageDialog(null, result);
}
No a potom si vytvoříš tlačítko2, přidáš si na něj actionListenera a vypíšeš si to
tlacitko2.addActionListener(action -> {
seznam.getBlockList().forEach(evt -> {
output(evt);
});
});
Kdyz v controlPanel naplnis INSTANCI Listu instancemi bloku, tak se na ni nemuzes odkazovat jinde..to jenaprosto spravne, promenna seznam je privatni v controlPanelu.. aby jsimohl se na ni odkazovat jinde, potrebujes ji z controlPanelu te tve jine tride nejak predat, treba v construktoru tve nove tridy..
Ahoj díky za tipy nakonec jsem našel že se na pro tyto případy hodí
použít návrhový vzor singleton - takže jsem ve třídě Lists zakázal
konstruktor a vytvořil kolekce jako private static final + jsem vytvořil
potřebné statické metody. Nevím či je to nejlepší řešení ale pro mě
vyhovující 
Zobrazeno 4 zpráv z 4.