Diskuze: Kód který se spustí před ukončením aplikace uživatelem
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 18 zpráv z 18.
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.


Předpokládám, že mluvíš o aplikaci napsané pomocí Swingu a o okně vytvořeném pomocí JFrame. Nejprve musíš zakázat, aby se okno vůbec dalo 'křížkem' zavřít, takže někde v inicializaci toho JFrame udělej:
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
dále pak potřebuješ odchytit tu událost, kdy se někdo pokusí okno zavřít, ať už pomocí 'křížku' nebo i pomocí nějaké klávesové zkratky. To se dělá tak, že opět do inicializace JFrame přidáš WindowAdapter s overridnutou metodou windowClosing:
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
//Tady dej kód co se má spustit, když se někdo pokusí zavřít okno
}});
Hele sorry jsem úplnej noob co je Swing a JFrame?
Aha to seš hádám na špatným fóru, tady se diskutuje o programování v
Javě 
no taky že jo: jak naprogramovat aplikaci v jave která před zavřením vykoná nějakou část kódu
No ale pokud nevíš co je Swing a JFrame, tak by ses nejprve asi měl ptát
jenom: jak naprogramovat aplikaci v Javě
A na to tu máme <a
href='https://www.itnetwork.cz/java/swing'>šikovný
seriál.</a>
Dobře nějak jsem si projel první tři epizody á... co je inicializace JFrame? tak nějak nepobírám to slovní spojení
Inicializace = nastavení počátečních hodnot. Prostě to místo v programu, kde píšeš co má JFrame obsahovat, případně jak má vypadat - typicky konstruktor a nebo metoda volaná v konstruktoru.
inicializace není nastavení:) když už, tak to mají nejvíc na starost
přístupové metody.
inicializace znamená vytváření nové instance třídy.
a takový výraz si vzal
kde?:D
zkus si to jen z prdele dát do googlu:D
Když vytváříš instanci třídy, jde o instanciaci, tento výraz se v
češtině nepoužívá sice moc často ale google vrací pár výsledků a v
angličtině je úplně běžný:) Když chceš tomuto vytvářenému objektu
nastavit nějaké počáteční hodnoty provádíš jeho inicializaci... Odkazu
výše si nevšímej, chtěl jsem původně odkázat na anglickou verzi kde je
ten výraz jasně použit a nějak jsem to zkonil
https://en.wikipedia.org/…uter_science)
ok, tak proč teda java bere jako instancializovaný objekt dejme tomu například už jen při vytvoření (PRÁZDNÉ) kolekce?
ArrayList<Object> arrayOfObjects = new ArrayList<>();
a že bych této instanci nastavoval nějaká data, to se mi fakt nezdá
PS: mrkni ještě jednou na ty odkazy, nevím jestli jenom mě, ale ta
anglická verze nějak nic nenachází:)
a ještě malinkatý doplněk - ohánět se wikinou, kór při správné syntaxi
není moc dobrý nápad:) Na wikinu píše tolik volů takové nesmysli... už
jsem se tam i dočetl, že třeba 2. světovou válku vyhráli američané za
pomocí Britů:D
Takže wikina není zrovna to pravé ořechové
A jestlis myslel zrovna toto....
https://en.wikipedia.org/…uter_science)
tak popravdě co to čtu, tak v každém odstavci vidím plno nesmyslů (i z
pohledu Javy)
tak například:
...object, existing usually during the runtime of a computer program
když už, tak Java jako taková nepracuje ani s procesy systému, ale přes JVM pracuje s vlákny. "computer program" svědčí o profesionalitě článku;)
The creation of an instance is called instantiation
radši bez komentáře, to je možná ten výkvět, ze kterého ty prameníš
objects are created from classes by subroutines called constructors
já ti čoveče nevím, ale není náááhodou konstruktor vyjímečný případ metody (funkce), jehož návratový typ není uveden, protože ve své podstatě vrací instanci třídy? tato věta je pěkná blbost
> and destroyed by destructors
uznávám, že tam žvatlají obecně o instanci, ale aspoň tam mohli dát
krátkou větičku, že Java něco jako destruktor nemá. Ta přišla s GC a
teď se to snaží zavést všechny OOP jazyky. Zbytek odstavce nemá cenu
komentovat, stejně tam nic podstatného neříká, ani kdyby použil správnou
terminologii
Each time a program runs, it is an instance of that program
jak je teda možné, že program může pracovat s několika instancemi?:D takto to položit začátečníkům a mají z toho v hlavě maďarský guláš
An important distinction is between the data type, which is interface, and the class, which is implementation.
mě jebne....
The meaning of the term "type" in computer science is rather similar to the meaning of the word "type" in everyday language. For example, a barman can ask a client what type of beverage does he or she want – coffee, tea or beer?
Tak tohle je nejlepší ukázka příkladu datových typů, jakou jsem kdy viděl. Když už pominu že by všechny chlasty, co tu uvedl/a mohli být objektového datového typu třeba Drink, není přece jen lepší uvádět a pracovat ze začátku s primitvními datovými typy? to že se to nějak dělí, to tam vůůůůbec není ani zmíněné.
Prostě wikina není relevantní zdroj. Konkrétně autor tohoto článku si zjistil pár termínů, ještě je zkomolil a dal je k sobě tak, jako největší čuně.
Na takovýto článek platí krásná věta:
Nepužívejte odborové termity, abyste při jejich nekorektních uskutečnění
nevyzařovali jako obrovští dominogové.
Ve své rádoby kritice wikipedie cituješ věty vytržené z kontextu,
přičemž následně píšeš úplně o něčem jiném, jenom abys zněl
chytře a kriticky... například hned ten první skvost:
>>když už, tak Java jako taková nepracuje ani s procesy systému, ale
přes JVM pracuje s vlákny.
Jak to souvisí s tou větou, kterou jsi citoval?
Jinak z wikipedie pojem instanciace určitě nemám, jsem si jistý že jsem
ho viděl používat a sám jsem ho používal dávno před tím než vůbec
nějaká wikipedie existovala. Jak jsem psal vídávám ho mnohem častěji v
angličtině, ale existuje a používá se i v češtině. Zkusil jsem si co jsi
mi navrhoval a zadal jsem ten pojem do google.
Namátkou prvních pár relevantních:
http://ktiml.mff.cuni.cz/…viceni05.pdf
http://www.fit.vutbr.cz/…rants.php.cs?…
https://www.fi.muni.cz/…-handout.pdf
Takže místo švejkování a plané snahy dokazovat mi, že ten výraz
neexistuje, by ses mohl pochlapit a přiznat si žes ho prostě neznal 
ok, tak fajn... tak polopatě i pro tebe...
Každý program má svůj proces. Systém jako takový pracuje s procesy. Když
tam hnětli tu blbost o běhu programu, tak jsem předpokládal, že toto víš
i ty. Zmílil jsem se, omlouvám se a příště to budu rozepisovat do
detailů, abys to pochopil i ty.
Jestli teda není jen na wikině, tak mi prosím pošli ten odkaz. Já to čoveče fakt nemůžu nějak najít
k těm tvým odkazům:D
http://ktiml.mff.cuni.cz/…viceni05.pdf - Instanciace
promnných (excelentní:D) proměnná je dokonalý příklad instance:D
a v těch druhých dvou si zkus zas namátko vyhledat termín inicializace -
vůbec ho ani nepoužívají. Tudíž soudím jasná záměna.
A máš pravdu, takový výraz jsem nikdy neslyšel ani v práci, ani ve
škole ani tady na networku a čoveče na žádném jiném foru:D
Ale nechám tě v tom, říká se, že když se s blbem hádáš víc jak dvě
minuty, si sám blb a já nemám fakt sebemenší důvod ani chuť dokazovat ti,
že je to zkomolenina, kterou nikde nenajdeš (v žádné literatuře a v 99%
webů. To 1% je nejspíš zapříčiněno tím, že jsi tam přispíval ty
sám)
čus a mysli si třeba, že jsi vyhrál:D ale prosím tě, neval takovéto
sračky nováčkům do hlavy. Jen je zblbneš
Takže články tady na itnetwork, kde je tento pro tebe neexistující pojem použit:
https://www.itnetwork.cz/…-konstruktor
https://www.itnetwork.cz/…ail-produktu
https://www.itnetwork.cz/…ni-operatoru
https://www.itnetwork.cz/…-konstruktor
Tímto s tebou tuto planou diskusi končím, sám jsi ničím k původnímu dotazu nepřispěl, jenom jsi tu přišel předvést svoji aroganci a neznalost, takže tě prosím - příště se do diskuse nezapojuj pokud nemáš nic k tématu.
Zobrazeno 18 zpráv z 18.