Öèòàòà
È åñòü äðóãîé êëàññ. Êàê ìíå èç äðóãîãî êëàññà ïîëó÷èòü çíà÷åíèå ñâîéñòâà myVar êëàññà äîêóìåíòà?
Ñòàíäàðòíûì äëÿ ÎÎÏ ïóò¸ì - ÷åðåç ìåòîäû êëàññà. Ò.å. â îäíîì êëàññå (Main) òû ñîçäà¸øü ìåòîä äëÿ äîñòóïà ê ñâîéñòâó (myVar), à èç äðóãîãî êëàññà (èç ëþáûõ äðóãèõ êëàññîâ) ê íåìó îáðàùàåøüñÿ.
Äîáàâü â êëàññ Main ñëåäóþùèé ìåòîä:
Êîä
public function getVar() {
return myVar;
}
Ïðè ýòîì ñàìî ñâîéñòâî myVar òû ìîæåøü ñäåëàòü private, à íå public (÷òîáû òîëüêî ÷åðåç ìåòîäû ìîæíî áûëî ê íåìó îáðàòèòüñÿ). Èíà÷å ìîæíî áóäåò íàïðÿìóþ ê ñâîéñòâó îáðàùàòüñÿ.
Êîä
Main MyObject = new Main();
trace(MyObject.getVar()); // îáðàùåíèå ÷åðåç ìåòîä (ïðè myVar êàê public, òàê è private)
trace(MyObject.myVar); // îáðàùåíèå íàïðÿìóþ ê ñâîéñòâó (ïðè myVar êàê public)
Ïðè myVar êàê public âîçìîæíî íå òîëüêî ÷òåíèå, íî è çàïèñü íàïðÿìóþ â ñâîéñòâî (MyObject.myVar = 1), à åñëè áû myVar áûë private, òî ýòîãî íåëüçÿ áûëî áû ñäåëàòü (íè ïðî÷èòàòü, íè çàïèñàòü íàïðÿìóþ), è äëÿ çàïèñè íóæíî áûëî áû ñäåëàòü ñîîòâåòñòâóþùèé ìåòîä.