<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sk">
	<id>http://www.kiwiki.info/index.php?action=history&amp;feed=atom&amp;title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup</id>
	<title>Java - objektovo orientovaný prístup - História úprav</title>
	<link rel="self" type="application/atom+xml" href="http://www.kiwiki.info/index.php?action=history&amp;feed=atom&amp;title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup"/>
	<link rel="alternate" type="text/html" href="http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;action=history"/>
	<updated>2026-05-04T09:41:05Z</updated>
	<subtitle>História úprav pre túto stránku na wiki</subtitle>
	<generator>MediaWiki 1.34.0</generator>
	<entry>
		<id>http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=8627&amp;oldid=prev</id>
		<title>Juraj na 21:33, 27. december 2010</title>
		<link rel="alternate" type="text/html" href="http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=8627&amp;oldid=prev"/>
		<updated>2010-12-27T21:33:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;sk&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Staršia verzia&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Verzia zo dňa a času 21:33, 27. december 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Riadok 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riadok 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Navigacne menu - java}} Objektovo orientovaný prístup sa od tradičných postupov líši predovšetkým v tom, že ide o nový spôsob premýšľania. Ide o spôsob pohľadu na softvér pomocou abstrakcie reálneho sveta. Základným stavebným prvkom je objekt (entita), ktorá v sebe zahŕňa dátovú štruktúru popisujúcu určitú entitu, ale aj pravidlá správania sa tejto entity. Tým sa objektový prístup líši od konvenčného (štrukturovaného) programovania, kde dátová štruktúra a správanie sú spojené len veľmi voľne.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Navigacne menu - java}} Objektovo orientovaný prístup sa od tradičných postupov líši predovšetkým v tom, že ide o nový spôsob premýšľania. Ide o spôsob pohľadu na softvér pomocou abstrakcie reálneho sveta. Základným stavebným prvkom je objekt (entita), ktorá v sebe zahŕňa dátovú štruktúru popisujúcu určitú entitu, ale aj pravidlá správania sa tejto entity. Tým sa objektový prístup líši od konvenčného (štrukturovaného) programovania, kde dátová štruktúra a správanie sú spojené len veľmi voľne.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Koncepcia OOP &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;ref&amp;gt;http://cs.wikipedia.org/wiki/Objektov%C4%9B_orientovan%C3%A9_programov%C3%A1n%C3%AD&amp;lt;/ref&amp;gt;&lt;/del&gt;==  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Koncepcia OOP==  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Objekty''' - jednotlivé prvky modelovanej reality (tak ako dáta, tak súvisiaca funkcionalita) sú v programe zoskupené do entít, nazývaných objekty. Objekty si pamätajú svoj stav a navonok poskytujú operácie (prístupné ako metódy).  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Objekty''' - jednotlivé prvky modelovanej reality (tak ako dáta, tak súvisiaca funkcionalita) sú v programe zoskupené do entít, nazývaných objekty. Objekty si pamätajú svoj stav a navonok poskytujú operácie (prístupné ako metódy).  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l11&quot; &gt;Riadok 11:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riadok 11:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Polymorfizmus '''- odkazovaný objekt sa chová podľa toho, akej triedy je inštanciou. Ak niekoľko objektov poskytuje rovnaké rozhranie, pracuje sa s nimi rovnakým spôsobom, ale ich konkrétne správanie sa líši podľa implementácie. U polymorfizmu podmieneného dedičnosťou to znamená, že na miesto, kde je očakávaná inštancia nejakej triedy, môžeme dosadiť aj inštanciu ľubovoľnej jej podtriedy, pretože rozhranie triedy je podmnožinou rozhranie podtriedy. U polymorfizmu nepodmieného dedičnosťou je dostatočné, ak sa rozhranie (alebo ich požadované časti) u rôznych tried zhodujú, potom sú vzájomne polymorfná.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Polymorfizmus '''- odkazovaný objekt sa chová podľa toho, akej triedy je inštanciou. Ak niekoľko objektov poskytuje rovnaké rozhranie, pracuje sa s nimi rovnakým spôsobom, ale ich konkrétne správanie sa líši podľa implementácie. U polymorfizmu podmieneného dedičnosťou to znamená, že na miesto, kde je očakávaná inštancia nejakej triedy, môžeme dosadiť aj inštanciu ľubovoľnej jej podtriedy, pretože rozhranie triedy je podmnožinou rozhranie podtriedy. U polymorfizmu nepodmieného dedičnosťou je dostatočné, ak sa rozhranie (alebo ich požadované časti) u rôznych tried zhodujú, potom sú vzájomne polymorfná.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Základnou paradigmou OOP je snaha pri riešení úloh modelovať princípy reálneho sveta pokiaľ možno jedna ku jednej. V praktickom živote otvárame dvere stále rovnako, bez ohľadu na to, či sú drevené alebo laminované, či majú kukátko, bezpečnostnú vložku alebo retiazku. Rovnako tak sa môžeme pozerať na televíziu, prepínať programy a vcelku dobre ju ovládať, napriek tomu že nevieme vôbec nič o princípoch jej fungovania. Analogicky, pri vývoji zložitých informačných systémov môžu vývojári používať už vytvorené komponenty, podľa potreby si ich trochu upraviť alebo ich používať ako stavebnicu pre zostavovanie dômyselnejších a zložitejších objektov.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Základnou paradigmou OOP&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;ref&amp;gt;http://cs.wikipedia.org/wiki/Objektov%C4%9B_orientovan%C3%A9_programov%C3%A1n%C3%AD&amp;lt;/ref&amp;gt; &lt;/ins&gt;je snaha pri riešení úloh modelovať princípy reálneho sveta pokiaľ možno jedna ku jednej. V praktickom živote otvárame dvere stále rovnako, bez ohľadu na to, či sú drevené alebo laminované, či majú kukátko, bezpečnostnú vložku alebo retiazku. Rovnako tak sa môžeme pozerať na televíziu, prepínať programy a vcelku dobre ju ovládať, napriek tomu že nevieme vôbec nič o princípoch jej fungovania. Analogicky, pri vývoji zložitých informačných systémov môžu vývojári používať už vytvorené komponenty, podľa potreby si ich trochu upraviť alebo ich používať ako stavebnicu pre zostavovanie dômyselnejších a zložitejších objektov.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Deklarácia triedy ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Deklarácia triedy ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Trieda (objektov) nám umožňuje vymenovať vlastnosti (properties) budúcich objektov (napr. kniha má autora, vydavateľstvo, rok vydania, počet strán ...) a tiež činnosti (metódy), ktoré sa k nim vzťahujú (hľadanie slov, hľadanie v obsahu, vypísanie zoznamu obrázkov, tlačenie ...). Aby sme mohli s triedou pracovať, musíme ju pred použitím ''deklarovať'':&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Trieda (objektov) nám umožňuje vymenovať vlastnosti (properties) budúcich objektov (napr. kniha má autora, vydavateľstvo, rok vydania, počet strán ...) a tiež činnosti (metódy), ktoré sa k nim vzťahujú (hľadanie slov, hľadanie v obsahu, vypísanie zoznamu obrázkov, tlačenie ...). Aby sme mohli s triedou pracovať, musíme ju pred použitím ''deklarovať'':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Juraj</name></author>
		
	</entry>
	<entry>
		<id>http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7272&amp;oldid=prev</id>
		<title>Juraj na 20:22, 14. október 2010</title>
		<link rel="alternate" type="text/html" href="http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7272&amp;oldid=prev"/>
		<updated>2010-10-14T20:22:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;sk&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Staršia verzia&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Verzia zo dňa a času 20:22, 14. október 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l32&quot; &gt;Riadok 32:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riadok 32:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* aké má objekt vlastnosti  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* aké má objekt vlastnosti  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ako sa objekt ovláda&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ako sa objekt ovláda&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===Metódy triedy===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Trieda je zovšeobecnením - '''abstrakciou''' množiny objektov, veľa objektov s rôznymi vlastnosťami môže byť 'vyrobených' z jednej spoločnej triedy. Objekt je zase '''inštanciou''' triedy.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Trieda je zovšeobecnením - '''abstrakciou''' množiny objektov, veľa objektov s rôznymi vlastnosťami môže byť 'vyrobených' z jednej spoločnej triedy. Objekt je zase '''inštanciou''' triedy.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l67&quot; &gt;Riadok 67:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riadok 68:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pri volaní operátora '''new''' v našom prípade virtuálny stroj Javy vytvorí nový objekt, umiestni ho v pamäti a hodnoty všetkých premenných v objekte nastaví na štandardné hodnoty, t.j. ''x,y ... '' budú mať hodnotu ''0.0''.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pri volaní operátora '''new''' v našom prípade virtuálny stroj Javy vytvorí nový objekt, umiestni ho v pamäti a hodnoty všetkých premenných v objekte nastaví na štandardné hodnoty, t.j. ''x,y ... '' budú mať hodnotu ''0.0''.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ďalej si ukážeme, že objekt môžeme skonštruovať aj v metóde inej triedy a ako je možné priamo pri vytváraní špecifikovať vlastnosti nového objektu.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ďalej si ukážeme, že objekt môžeme skonštruovať aj v metóde inej triedy a ako je možné priamo pri vytváraní špecifikovať vlastnosti nového objektu.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Riadenie &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;prítupu&lt;/del&gt;===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Riadenie &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;prístupu&lt;/ins&gt;===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Doposiaľ boli všetky vnútorné premenné vytváranej triedy definované ako verejné. Znamená to, že k nim môžeme pristupvať z iných tried - napríklad ako v predchádzajúcom zdrojovom kóde - z triedy Test.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Doposiaľ boli všetky vnútorné premenné vytváranej triedy definované ako verejné. Znamená to, že k nim môžeme pristupvať z iných tried - napríklad ako v predchádzajúcom zdrojovom kóde - z triedy Test.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Juraj</name></author>
		
	</entry>
	<entry>
		<id>http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7269&amp;oldid=prev</id>
		<title>Juraj na 18:55, 14. október 2010</title>
		<link rel="alternate" type="text/html" href="http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7269&amp;oldid=prev"/>
		<updated>2010-10-14T18:55:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;sk&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Staršia verzia&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Verzia zo dňa a času 18:55, 14. október 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l67&quot; &gt;Riadok 67:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Riadok 67:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pri volaní operátora '''new''' v našom prípade virtuálny stroj Javy vytvorí nový objekt, umiestni ho v pamäti a hodnoty všetkých premenných v objekte nastaví na štandardné hodnoty, t.j. ''x,y ... '' budú mať hodnotu ''0.0''.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Pri volaní operátora '''new''' v našom prípade virtuálny stroj Javy vytvorí nový objekt, umiestni ho v pamäti a hodnoty všetkých premenných v objekte nastaví na štandardné hodnoty, t.j. ''x,y ... '' budú mať hodnotu ''0.0''.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ďalej si ukážeme, že objekt môžeme skonštruovať aj v metóde inej triedy a ako je možné priamo pri vytváraní špecifikovať vlastnosti nového objektu.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ďalej si ukážeme, že objekt môžeme skonštruovať aj v metóde inej triedy a ako je možné priamo pri vytváraní špecifikovať vlastnosti nového objektu.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===Riadenie prítupu===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Doposiaľ boli všetky vnútorné premenné vytváranej triedy definované ako verejné. Znamená to, že k nim môžeme pristupvať z iných tried - napríklad ako v predchádzajúcom zdrojovom kóde - z triedy Test.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Pri definícii premenných triedy, ale aj metód triedy môžeme (a mali by sme) určiť, či sa jedná o verejné premenné/metódy alebo súkromné, ku ktorým bude povolený prístup len zvnútra aktuálnej triedy. Špecifikátor, ktorý toto určuje sa uvádza pred definíciu triednych premených, resp. metód triedy. Poznáme 3 základné metódy prístupu:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* private - člen je prístupný len v triede, kde je definovaný&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* pretected - člen je prístupný z väčšiny podtried triedy, kde je deklarovaný. A taktiež zo všetkých tried v balíčku, kde je deklarovaný.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* public - člen je prístupný odkiaľkoľvek.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Zmeňme definíciu triedy Castica nasledovne&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;class Castica {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  private double x, y, z, vx, vy, vz;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  public void move(double dt) {&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    x = x + dt * vx;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    y = y + dt * vy;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;    z = z + dt * vz;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;  }&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/source&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Definovali sme vnútorné premenné triedy Castica (x, y, z, vx, vy, vz) ako privátne. Od teraz nie je možné pristupvať k nim ako je ukázané v triede Test (na tejto stránke).&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Pre prístup k týmto vnútorným premenným a k ich zmene sa používajú špeciálne metódy, ktoré majú za úlohu pristupvať k vlastnostiam objektu a meniť hodnoty vlastností objektov. Viac o týchto metódach je v časti [[Java - prístupové metódy]].&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Zánik objektu ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Zánik objektu ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Juraj</name></author>
		
	</entry>
	<entry>
		<id>http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7264&amp;oldid=prev</id>
		<title>Juraj: Vytvorená stránka „{{Navigacne menu - java}} Objektovo orientovaný prístup sa od tradičných postupov líši predovšetkým v tom, že ide o nový spôsob premýšľania. Ide o spôsob poh…“</title>
		<link rel="alternate" type="text/html" href="http://www.kiwiki.info/index.php?title=Java_-_objektovo_orientovan%C3%BD_pr%C3%ADstup&amp;diff=7264&amp;oldid=prev"/>
		<updated>2010-10-14T18:33:44Z</updated>

		<summary type="html">&lt;p&gt;Vytvorená stránka „{{Navigacne menu - java}} Objektovo orientovaný prístup sa od tradičných postupov líši predovšetkým v tom, že ide o nový spôsob premýšľania. Ide o spôsob poh…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Navigacne menu - java}} Objektovo orientovaný prístup sa od tradičných postupov líši predovšetkým v tom, že ide o nový spôsob premýšľania. Ide o spôsob pohľadu na softvér pomocou abstrakcie reálneho sveta. Základným stavebným prvkom je objekt (entita), ktorá v sebe zahŕňa dátovú štruktúru popisujúcu určitú entitu, ale aj pravidlá správania sa tejto entity. Tým sa objektový prístup líši od konvenčného (štrukturovaného) programovania, kde dátová štruktúra a správanie sú spojené len veľmi voľne. &lt;br /&gt;
&lt;br /&gt;
==Koncepcia OOP &amp;lt;ref&amp;gt;http://cs.wikipedia.org/wiki/Objektov%C4%9B_orientovan%C3%A9_programov%C3%A1n%C3%AD&amp;lt;/ref&amp;gt;== &lt;br /&gt;
&lt;br /&gt;
*'''Objekty''' - jednotlivé prvky modelovanej reality (tak ako dáta, tak súvisiaca funkcionalita) sú v programe zoskupené do entít, nazývaných objekty. Objekty si pamätajú svoj stav a navonok poskytujú operácie (prístupné ako metódy). &lt;br /&gt;
*'''Abstrakcia''' - programátor (resp. program, ktorý vytvára), môže abstrahovať od niektorých detailov práce jednotlivých objektov. Každý objekt pracuje ako čierna skrinka, ktorá dokáže vykonávať určené činnosti a komunikovať s okolím bez toho aby poznala spôsob akým je daná funkcionalita implementovaná. &lt;br /&gt;
*'''Zapúzdrenie''' - zaručuje, že objekt nemôže priamo pristupovať k vnútorným položkám iných objektov, čo by mohlo viesť k nejednotnosti. Každý objekt navonok sprístupňuje rozhranie, pomocou ktorého (a nijako inak) sa s objektom pracuje. &lt;br /&gt;
*'''Skladanie '''- Objekt môže obsahovať iné objekty. &lt;br /&gt;
*'''Delegovanie '''- Objekt môže využívať služby iných objektov tak, že ich požiada o vykonanie operácie. &lt;br /&gt;
*'''Dedičnosť''' - objekty sú organizované stromovým spôsobom, kedy objekty nejakého druhu môžu dediť z iného druhu objektov, čím preberajú ich schopnosti, ku ktorým len pridávajú svoje vlastné rozšírenie. Táto myšlienka sa obvykle implementuje pomocou rozdelenia objektov do tried, pričom každý objekt je inštanciou nejakej triedy. Každá trieda potom môže dediť od inej triedy.&amp;lt;br&amp;gt;&lt;br /&gt;
*'''Polymorfizmus '''- odkazovaný objekt sa chová podľa toho, akej triedy je inštanciou. Ak niekoľko objektov poskytuje rovnaké rozhranie, pracuje sa s nimi rovnakým spôsobom, ale ich konkrétne správanie sa líši podľa implementácie. U polymorfizmu podmieneného dedičnosťou to znamená, že na miesto, kde je očakávaná inštancia nejakej triedy, môžeme dosadiť aj inštanciu ľubovoľnej jej podtriedy, pretože rozhranie triedy je podmnožinou rozhranie podtriedy. U polymorfizmu nepodmieného dedičnosťou je dostatočné, ak sa rozhranie (alebo ich požadované časti) u rôznych tried zhodujú, potom sú vzájomne polymorfná.&lt;br /&gt;
&lt;br /&gt;
Základnou paradigmou OOP je snaha pri riešení úloh modelovať princípy reálneho sveta pokiaľ možno jedna ku jednej. V praktickom živote otvárame dvere stále rovnako, bez ohľadu na to, či sú drevené alebo laminované, či majú kukátko, bezpečnostnú vložku alebo retiazku. Rovnako tak sa môžeme pozerať na televíziu, prepínať programy a vcelku dobre ju ovládať, napriek tomu že nevieme vôbec nič o princípoch jej fungovania. Analogicky, pri vývoji zložitých informačných systémov môžu vývojári používať už vytvorené komponenty, podľa potreby si ich trochu upraviť alebo ich používať ako stavebnicu pre zostavovanie dômyselnejších a zložitejších objektov.&lt;br /&gt;
== Deklarácia triedy ==&lt;br /&gt;
Trieda (objektov) nám umožňuje vymenovať vlastnosti (properties) budúcich objektov (napr. kniha má autora, vydavateľstvo, rok vydania, počet strán ...) a tiež činnosti (metódy), ktoré sa k nim vzťahujú (hľadanie slov, hľadanie v obsahu, vypísanie zoznamu obrázkov, tlačenie ...). Aby sme mohli s triedou pracovať, musíme ju pred použitím ''deklarovať'':&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
class MojaTrieda{&lt;br /&gt;
  // telo triedy, obsahuje metody triedy a prislusne atributy &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Zatiaľ sme používali iba triedy s jedinou metódou ''main'', ktorá je automaticky vykonaná po spustení triedy a všetky premenné sme deklarovali v rámci nej. Teraz v metódach začneme používať aj premenné a funkcie - metódy, definované v iných triedach tak, že si vytvoríme objekt z príslušnej nami vybranej triedy, ktorú chceme použiť. &lt;br /&gt;
&lt;br /&gt;
Objekt je &amp;quot;výrobok&amp;quot; majúci triedou deklarované vlastnosti. Obsahuje premenné a pomocou neho môžeme používať aj metódy, ktoré boli zadefinované triedou. Zjednodušene môžeme povedať, že trieda je akýmsi predpisom alebo šablónou, podľa ktorej môžeme 'vyrábať' objekty.&lt;br /&gt;
Nový objekt vytvoríme z deklarácie triedy pomocou operátora '''new'''. Pri vytváraní objektu si zvolíme meno, pod ktorým budeme objekt ďalej poznať a používať. V skutočnosti ale vytvorený objekt nie je pevne zviazaný s menom objektu, meno objektu je len akýmsi ukazovátkom - '''referenciou''' a v budúcnosti môžeme menu (referencii) priradiť úplne iný objekt.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
MojaTrieda obj = new MojaTrieda()  // 'obj' je  ukazovátko - referencia na vytvorený objekt&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Môžeme povedať, že vo všeobecnosti trieda  popisuje&lt;br /&gt;
* ako sa objekt vytvára (vyrába)&lt;br /&gt;
* aké má objekt vlastnosti &lt;br /&gt;
* ako sa objekt ovláda&lt;br /&gt;
Trieda je zovšeobecnením - '''abstrakciou''' množiny objektov, veľa objektov s rôznymi vlastnosťami môže byť 'vyrobených' z jednej spoločnej triedy. Objekt je zase '''inštanciou''' triedy.&lt;br /&gt;
&lt;br /&gt;
Ako príklad môžeme uvažovať triedu, ktorá reprezentuje častice hmoty. To, čo ich charakterizuje - ich vlastnosti - budú premenné danej triedy. Na začiatok špecifikujme len polohu a rýchlosť pohybu, neskôr môžeme uvažovať aj napr. hmotnosť, náboj, energia ... Po zapísaní triedy častica bude možné vyrobiť objekty - jednotlivé častice, ktoré majú samozrejme nezávisle od seba rôzne polohy a rýchlosti. Aby sme si ukázali, ako vie nový objekt ''castica'' pracovať zo svojimi vlastnosťami, zadefinujme si aj metódu ''move'', ktorá simuluje pohyb častice tým, že k aktuálnej polohe pripočíta zmenu polohy v dôsledku rovnomerného pohybu častice:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
class Castica {&lt;br /&gt;
  double x, y, z, vx, vy, vz;&lt;br /&gt;
  &lt;br /&gt;
  public void move(double dt) {&lt;br /&gt;
    x = x + dt * vx;&lt;br /&gt;
    y = y + dt * vy;&lt;br /&gt;
    z = z + dt * vz;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Argument metódy ''move'' udáva, o koľko sa v čase posunieme. Kľúčové slovo '''void''' hovorí, že návratový typ výsledku vykonania metódy je žiadny - &amp;quot;vracia nič&amp;quot; (nepotrebujeme ho). Ak vytvoríme nový objekt, k jeho atribútom pristupujeme pomocou bodky ('''.''') nasledovanej požadovaným atribútom (dátami alebo metódami) podľa mena uvedeného v deklarácii triedy.&lt;br /&gt;
Pre testovanie objektov triedy ''Castica'' použijeme už dobre známy postup s triedou ktorá obsahuje metódu '''main'''.&lt;br /&gt;
&lt;br /&gt;
Ako vidíme, v triede sa združujú spoločne ''dáta'' (premenné x,y ...) a ''program'', ktorý s tymito dátami pracuje (metóda move). Takýto postup nazývame '''zapúzdrenie''' a je jedným zo základných atribútov objektovo-orientovaného programovania.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt; &lt;br /&gt;
class Test{&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Castica castica = new Castica();&lt;br /&gt;
    castica.x = 0.1;&lt;br /&gt;
    castica.y = 0.2;&lt;br /&gt;
    castica.z = 1.1;&lt;br /&gt;
    castica.vx = -0.5;&lt;br /&gt;
    castica.vy =  0.4;&lt;br /&gt;
    castica.vz =  0.2;&lt;br /&gt;
    castica.move(0.1);&lt;br /&gt;
    System.out.println(&amp;quot;Pozicia: &amp;quot; + castica.x + &amp;quot;, &amp;quot; + castica.y + &amp;quot;, &amp;quot; + castica.z);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Pri volaní operátora '''new''' v našom prípade virtuálny stroj Javy vytvorí nový objekt, umiestni ho v pamäti a hodnoty všetkých premenných v objekte nastaví na štandardné hodnoty, t.j. ''x,y ... '' budú mať hodnotu ''0.0''.&lt;br /&gt;
Ďalej si ukážeme, že objekt môžeme skonštruovať aj v metóde inej triedy a ako je možné priamo pri vytváraní špecifikovať vlastnosti nového objektu.&lt;br /&gt;
&lt;br /&gt;
== Zánik objektu ==&lt;br /&gt;
Pri vytváraní objektov java postupne rezervuje v pamäti počítača miesto pre jednotlivé objekty. Počas práce programu môžu nastať okolnosti, kedy objekty už nie sú potrebné alebo potrebujeme uvoľniť pamäť počítača pre nové objekty. V starších programovacích jazykoch, ktoré používali koncept objektovo-orientovaného programovania (napr. C++) musel programátor veľmi starostlivo strážiť stav operačnej pamäte, aby mu v nej nezostávali zbytočné alebo 'bezprizorné' objekty. Toto bývalo obľúbeným zdrojom ťažko identifikovateľných chýb, ktoré sa často prejavovali až po nejakej dobe činnosti programu. V jave sa nám o likvidáciu nepotrebných objektov stará špeciálny mechanizmus implementovaný priamo v jave, ktorý spôsobí automatické zmazanie objektu, akonáhle zaniknú všetky väzby k tomuto objektu.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    Castica castica;   // referencia na objekt, ukazuje nikam (na null)&lt;br /&gt;
    ...&lt;br /&gt;
    castica = new Castica(-0.5, 0.4, 0.2);  // objekt 1&lt;br /&gt;
    ...&lt;br /&gt;
    castica = new Castica(-0.3, 0.1, 0.5);  // objekt 2, ta ista referencia&lt;br /&gt;
    ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
V poslednom riadku sme vytvorili nový objekt (2), starý objekt (1) sa stal nedostupným (nemáme k nemu žiadnu väzbu-referenciu) a preto ho java pri vhodnej príležitosti z pamäte odstráni.&lt;br /&gt;
&lt;br /&gt;
== Hodnoty a referencie ==&lt;br /&gt;
Premenné primitívnych dátových typov (int, double ...) sú vždy v jave reprezentované hodnotou, t.j. meno premennej priamo reprezentuje jej numerickú alebo znakovú hodnotu. Ako sme si ukázali vyššie, premenné objektových dátových typov - objekty sú reprezentované referenciou, t.j. pod menom premennej sa skrýva ukazovátko - smerník na dátovú oblasť, kde je objekt uložený. Programovacie jazyky, ktoré používajú tento koncept pri implementácii objektovo-orientovaného programovania sú označované aj ako '''hybridné jazyky''' na rozdiel od čisto objektovo-orientovaných jazykov ako napr. Smalltalk, kde sú všetky premenné bez výnimky (aj každé číslo) objektami.&lt;br /&gt;
&lt;br /&gt;
Hybridný koncept značne zrýchluje a zjednodušuje štruktúru jazyka, na druhej strane, ako je zrejme z vyššie uvedeného, musíme byť opatrný pri spoločnom používaní hodnôt a referencií, pretože bez znalosti deklarácie dátového typu nevieme hodnoty a referencie odlíšiť. Zvlášť opatrným treba byť pri priraďovaní:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
    double x=1.0;&lt;br /&gt;
    double y=x;    // kopirujeme hodnoty&lt;br /&gt;
    double z=y;&lt;br /&gt;
    ...&lt;br /&gt;
    Castica castica_1; &lt;br /&gt;
    Castica castica_2; &lt;br /&gt;
    ...&lt;br /&gt;
    castica_1 = new Castica(x, y, z);  &lt;br /&gt;
    castica_2 = castica_1;     // kopirujeme odkazy na objekty&lt;br /&gt;
    ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Pri priraďovaní hodnotám premenným ''x,y,z'' typu double sa hodnoty jednoducho skopírujú. Pri priraďovaní objektom sa skopírujú odkazy a preto referencie ''castica_1'' a ''castica_2'' ukazuju na '''ten istý''' objekt v pamäti počítača.&lt;br /&gt;
&lt;br /&gt;
==Zdroje a odkazy==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Juraj</name></author>
		
	</entry>
</feed>