Re: Swing a uvolnovani Window
Ano, použil jsem ho několikrát právě pro takovéto případy. Například reference na session beany v EJB2 projektu, JDBC Connection/Statement atd. Tedy ne že by se tím vyloženě _nahradilo_ korektní zavírání/uvolňování, ale ono se vždy najde spousta míst kde nějak to korektní zavření chybí. Takže druhá linie je velmi praktická. Kamil Podlešák 2010/1/26 Oto Buchta ta...@buchtovi.cz: Dne 26. ledna 2010 17:28 Kamil Podlesak kamil.podle...@gmail.com napsal(a): Ještě bych doplnil: pokud potřebuji použít finalizér, tak správné řešení je použít PhantomReference a speciální vlákno (daemon) které mi provádí úklid. e.p.: Pouzil uz z vas nekdo PhantomReference? -- Oto 'tapik' Buchta, ta...@buchtovi.cz, http://tapikuv.blogspot.com
Re: Swing a uvolnovani Window
Ksakru, měl bych zase začít sledovat svou RSS čtečku, tohle mi úplně uniklo! FCM mi zrovna k srdci nepřirostlo, ale lepší než nic :-) A podle Alexe Millera http://puredanger.com/tech/2009/11/18/closures-after-all/ by možná mohlo dojít i na ParallelArray, bomba! LT Dne 27. ledna 2010 8:07 Zdenek Tronicek troni...@fit.cvut.cz napsal(a): Tak to byly Tvoje modlitby :-). A ja si porad lamal hlavu, co primelo Marka Reinholda, aby zmenil nazor na closures a zahrnul je do JDK 7. Po jeho oznameni na Devoxxu je velmi pravdepodobne, ze closures budou. Jen se zatim nevi, jak budou vypadat. Mozna takto: #int(String) strLen = #(String s) { if (s == null) return -1; return s.length(); }; nebo takto: #(String: int) strLen = #(String s: int length) label:{ if (s == null) { length =-1; break label; } length = s.length(); }; nebo treba i takto: #(String: int) strLen = #int(String s) length: { if (s == null) break length =-1; length = s.length(); }; a nebo uplne jinak. Z.T. -- Zdenek Tronicek FIT CTU in Prague Ladislav Thon napsal(a): V navaznosti na tuto diskuzi bych rad poznamenal, ze jednim z navrhu na vylepseni Javy je Automatic Resource Management. Je to jeden z akceptovaných návrhů Project Coin: http://wikis.sun.com/display/ProjectCoin/2009ProposalsTOC, takže by se to mělo objevit v Javě 7. A já volám, když už nebyly vyslyšeny moje modlitby stran lexikálních uzávěrů: sláva! Sláva! Mimochodem, C# má spoustu věcí, které Javě IMHO chybí. A Groovy ostatně taky. To jen když už jsme se pustili do těžce off-topic témat :-) LT
Re: Swing a uvolnovani Window
Jo to je celkem dobra konstrukce a bylo by fajn jimit v Jave taky. V C# to predpoklada, ze trida (jako napr. tady BufferedReader) implementuje IDisposable, ktera ma metodu dispose(). Podobna konstrukce je u transakci: using(TransactionScope scope = new TransactionScope()) { /* Transactional work */ } Zdenek Tronicek wrote: V navaznosti na tuto diskuzi bych rad poznamenal, ze jednim z navrhu na vylepseni Javy je Automatic Resource Management. Misto static String readFirstLineFromFile(String path) throws IOException { BufferedReader br = new BufferedReader(new FileReader(path)); try { return br.readLine(); } finally { br.close(); } } bychom pak mohli psat static String readFirstLineFromFile2(String path) throws IOException { try (BufferedReader br = new BufferedReader(new FileReader(path)) { return br.readLine(); } } K zavreni streamu br dojde automaticky po opusteni bloku try. Mimochodem, C# to ma. Z.T.
Re: Swing a uvolnovani Window
Ale chapem, ze casto clovek vpadne do technologie a neexistuje priestor / cas / prilezitost na tutorialove upozornenia. Zadne tutorialove upozornenia nevidim: http://java.sun.com/docs/books/tutorial/uiswing/components/dialog.html http://java.sun.com/docs/books/tutorial/uiswing/components/frame.html I nektere priklady jinde na webu jsou spatne: http://www.java2s.com/Code/Java/Swing-JFC/Createsimpleaboutdialog.htm A JInternalFrame ma default close operation jako DISPOSE, aby to nebylo tak jednoduche :-) Nechci zacit flame, ale treba C# to ma vyresene lepe. Jako nektere dalsi veci, jak uz zde bylo zmineno.