Datový proud: Porovnání verzí

Smazaný obsah Přidaný obsah
Bez shrnutí editace
m almost fixed source (decorator)
značka: odstraněna reference
Řádek 110:
==== Dekoratér ====
 
Dekoratér je '''návrhový vzor''', který se používá k obohacení existujících objektů o přidanou funkcionalitu. Funkce, které neupravuje, deleguje na obalený objekt. (4) V angličtině se člověk může setkat s označením „wrapper“.<ref>Pecinovský, Rudolf. Návrhové vzory. Brno : COMPUTER PRESS, 2007. 978-80-251-1582-4.</ref>
Uplatnění tento vzor najde třeba při tvorbě GUI, kdy lze například podkladovou třídu
<pre>Okno o = new Okno();</pre>
Řádek 126:
Většina standardních tříd implementuje rozhraní <tt>Serializable</tt> (serializovatelný), které je nezbytné pro jejich podporu objektovými proudy. Objektové proudy rozšiřují datové proudy, ''takže objektové proudy umí pracovat i s primitivními datovými typy''. Nové metody jsou <tt>readObject</tt> a <tt>writeObject</tt>. Pokud metoda <tt>readObject</tt> vrátí jiný než očekávaný objekt, vyhodí výjimku typu <tt>ClassNotFoundException</tt>.
Pokud se objekt neskládá jen z primitivních typů ale i z '''referencí''' na další objekty, je potřeba zachovat tyto reference. Proto je při zápisu objektu uložit i všechny objekty, na které má daný objekt odkaz. Podobně se bude chovat čtecí proud, který se bude snažit zrekonstruovat celou takovou síť objektů.[http://docs.oracle.com/javase/tutorial/essential/io/objectstreams.html]
 
== Zdroje ==
*Pecinovský, Rudolf. ''Návrhové vzory''. Brno : COMPUTER PRESS, 2007. 978-80-251-1582-4.