Home FORUM Toplista HTML CSS JavaScript PHP DIZAJN SEO Mapa |
![]() |
![]() |
![]() |
![]() |
![]() |
Instanciranje, upotreba atributa klase i pozivanje operacija klaseInstanciranje klaseProgramiranje objekta – člana klase naziva se pravljenje instance ili instanciranje klase. Objekat se pravi upotrebom rezervisane reči new. Potrebno je navesti klasu i zadati parametre konstruktora. Sledeći kod deklariše klasu ime sa konstruktorom i zatim pravi tri objekta tog tipa:
Konstruktor se poziva svaki put kad se pravi objekat, pa je rezultat sledeći:
Pozvan konstruktor sa parametrom prvi Upotreba atributa klaseUpotreba atributa klase unutar klase, posebna promenjljiva $this odnosi se na tekući objekat. Atributu $atribut tekućeg objekta možete da pristupite po imenu $this->atribut unutar operacije klase. Evo primera:
U PHP-u se svi atributi i operacije vide izvan klasa (znači svi su javni). Prethodni odlomak se može napisati i drugačije pristupanjem podacima i izvan klase, upotrebom nešto drugačije klase:
Medjutim ovakav direktan pristup atributima izvan klase kao u ova dva primera nije preporučljiv. Jedna od prednosti objektno orjentisanog razvoja je ta što podstiče kapsuliranje. Iako se u PHP-u ne mogu sakriti podaci, uz malo truda možete postići iste rezultate. Ako umesto direktnog pristupa atributima neke klase napišete pristupne funkcije moći ćete da upravljate pristupom u jednom bloku koda. Pristupne funkcije mogu izgledati ovako:
Funkcija "citaj_atribut" samo vraća vrednost atributa $atribut, dok funkcija zadaj_atribut dodeljuje tom atributu novu vrednost. Kao što vidimo samo jedan blok koda pristupa konkretnom atributu. Kada ovako imate samo jednu tačku pristupa možete na primer kasnije, ako se ukaže potreba, da vrednost $atribut podesite na primer da bude iz opsega 0 i 100 tako što će te dodati nekoliko redova na samo jednom mestu u funkciji zadaj_atribut. Da nismo upotrebili pristupnu funkciju morali bi smo da pretražujemo svaki red u kodu i da menjamo svaki pristup atributu što je jako obiman posao podložan greškama. Kada imate samo jednu tačku pristupa osnovnu relaciju slobodno možete da menjate. Pristupna funkcija omogućava da izmenite način na koji se atribut čuva i to samo na jednom mestu. Umesto da atribut snimite kao promenjljivu možete ga po potrebi pozvati iz baze podataka, ili da svaki put izračunavate njegovu tekuću vrednost, ili da ga utvrdite na osnovu vrednosti ostalih atributa ili da podatke pakujete. Za kakvu god promenu da se odlučite dovoljno je da izmenite pristupnu funkciju. To neće uticati na druge delove koda dokle god pristupna funkcija prima ili vraća podatke koje ostali delovi programa očekuju. Pozivanje operacija klaseOperacija klase poziva se otprilike isto kao i atributi klase.
Ako na sledeći način napravite objekat $a:
Operacije pozivate isto kao i druge funkcije navodjenjem imena i potrebnih parametara u zagradama. Obzirom da te operacije pripadaju objektima a ne nekoj običnoj funkciji, potrebno je naglasiti kom objektu pripada. Ime objekta se koristi isto kao i prilikom pristupanja atributu tog objekta:
Rezultati se čitaju na sledeći način:
$x = $a - >operacija1(); |
![]() |
Copyright © 2010 BUbaj. Powered By bubaj.com |
PHP PHP sintaksa Fajl Niz String Funkcija Objektno programiranje MySQL Unos fajla Datum Forme Sesija Registracija |