PHP - objekty(10.)- část 1.







    Třídy



PHP nabízí základní nástroje pro práci s objekty. Jejich použití však nijak nevnucuje. Objekty mohou zlepšit mnoho aplikací, ale jdou nahradit. Pokud o objektech nic nevíte, koukněte se na článek Objektově Orientované Programování v sekci Ostatní > Návody. Objekty umožňují definici jednotlivých tříd. Třída se definuje pomocí klíčového slova class, mezery a názvu třídy, po kterém následuje blok příkazů. Tedy:

class MojeNovaTrida {...}

V třídách můžeme použít 2 základní věci: vlastnosti a metody

Vlastnosti jsou normální proměnné, které se váží k dané třídě. Pokud bychom dělali třídu Účet, vypadala by asi takto:

class Ucet {
var $majitel, $adresa, $stav, $jeKarta
}

Vydíme, že vlastnosti se zadávají pomocí klíčového slova var, za kterým následuje výčet proměnných. 

Metody jsou bloky příkazů obsahující kód, který se má po zavolání provést. V naši třídě bychom mohli použít metodu Pridej, která by zvedla o zadanou částku zůstatek.

class Ucet {
var $majitel, $adresa, $stav, $jeKarta;
function Pridej($kolik) {
	$this->stav += $kolik
	}
}

Metody se deklarují takto: function nazev_metody(parametry) {...}. Místo parametry můžeme uvést proměnné, které se, jako u klasické PHP funkce, zadávají při použití. Dále je zde neznámá konstrukce: $this->stav. Proměnná $this obsahuje všechny vlastnosti. Přistupujeme k nim pomocí zápisu: $this->jmeno_metody. Jíná způsob není možný. 

Když už máme nadefinovanou třídu můžeme vytvářet objekty. Prvně uvedu příklad:

class Ucet {...} //celá definice je výše, nebudu to zde opisovat
$ucet = new Ucet;
$ucet->majitel = "Vojtěch Zicha";
$ucet->adresa = "Na maninách 7, Praha 7";
$ucet->stav = 120000;
$ucet->jeKarta = true;
$ucet->Pridej(200);

Pokud chceme použít objekt, musíme pomocí zápisu $promenna = new nazev_tridy; si objekt otevřít. Můžeme si jich pochopitelně najdnou otevřít i víc. Poté přistupujeme k vlastnostem pomocí zápisu $objekt->vlastnost;. K metodám přistupujeme obdobně: $objekt->metoda(parametry);

Tak, to je vše. V dalším díle se koukneme na konstruktory a dědičnost.



  <     >  


autor: Vojtěch Zicha
publikováno: 16.7.2005

na ... zacátek stránkyhlavní stránku




Píše a spravuje Vítezslav Titl © 2004-2010, ISSN 1801-1136

Scriptici.cz

- o tvorbě webových stránek (xHTML, HTML, CSS, PHP, JavaScript), scripty a programování (Python, C++)
Google
 
Web scriptici.titl.name