Clasele (sau tipurile de obiecte) furnizeaza un mecanism de structurare prin care se defineste structura comuna a obiectelor care au aceleasi pro 323e44d prietati. Clasa defineste numarul, numele si structura atributelor de date precum si a metodelor acestora. In plus, o clasa asigura comportamentul (implementarea) metodelor .
JavaScript nu este un limbaj orientat pe obiecte în adevaratul sens al notiunii, bazat pe clase; se poate spune însa ca este un limbaj cu obiecte. Din acest motiv, notiunea de clasa, în sensul în care ea este cunoscuta nu exista definita în limbaj. In principiu, definirea unui nou tip de obiect se relizeaza în JavaScrip folosind functii. Toate obiectele noi sunt create folosind metoda new a tipului obiect. De exemplu, definirea unui nou obiect de tip Date (predefinit), se realizeaza astfel:
var data_noua=new Date();
Definirea propriilor tipuri de obiecte se realizeaza în JavaScript în felul urmator:
function Car(model, culoare, an)
Functia de mai sus defineste un tip de obiect Car si caracteristicile acestuia. Pentru obiectele definite în manierade mai sus, se pot defini apoi si metode, prin care sa asociem obiectelor create o functionalitate. Astfel, de exemplu, pentru obiecte de tip Car, o metoda care ar trebui implementata este aceea prin care se afiseaza în browser caracteristicile unui obiect de tip Car:
function displayCar()
In plus, crearea unui obiect de tip Car se realizeaza astfel:
var masina_buna=new Car("BMW","rosie","2000");
Se poate observa din aceste exemple ca instructiunea function serveste mai multor scopuri în JavaScript: pentru definirea functiilor dar si pentru definirea unui nou tip de obiect. In cazul definirii obiectelor, proprietatile noului tip de obiect sunt declarate ca parametri ai acestei functii definitorii, ceea ce înseamna ca pentru o clasa noua exista un singur constructor. In plus, obiectele nu se construiesc prin intermediul obiectelor existente, ci folosind instructiunea new. Concluzia este ca, cel putin referitor la acest aspect, JavaScript nu este foarte bine structurat, rezultînd uneori un cod sursa aparent derutant.
|