![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 866 Pomógł: 32 Dołączył: 2.06.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Mam sobie klasę:
I jak teraz z drugiej klasy dostać się do tej pierwswzej? Czy to będzie działać, i dlaczego nie i co zrobić z zasięgiem zmiennych?
I czy jest jakimś rozwiązaniem, a jeżeli tak to jak to działa? Następne małe pytanko to, czy jeżeli klasa się nazywa 'JakaśKlasa' to czy fukcja 'uruchomiana" automatycznie przy stworzeniu obiektu może się nazywać 'jakaśKlasa' czy musi 'JakaśKlasa' ? ________ PS: OOP jest dla mnie dosyć nowym zagadnieniem i nie za bardzo wiem jak rozwikłać zagwozdki igdzie ich szukać (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) a manual lekko mi miesza w głowie w tym temacie (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Dodam jeszcze:
metody statyczne (static) sa to metody klasy, wywolujesz je: NazwaKlasy::metoda() lub z obiektu tej klasy self::metoda(). metody niestatyczne -- metody obiektow: $this->metoda(), itd. Cytat Aha i czy __construct() ma być private/public/etc, czy nie? Bo w manualu przykłady są bez tych flag(?). U mnie jest private i zend code analyzer nie zgłasza wontów. Nie zglasza errorow bo wszsytkie opcje sa poprawne -- zalezy tylko co chcesz za ich pomoca uzyskac (patrz: ^^^ M4chu ). Cytat I czy jeżeli chce mieć dostęp do jakiegoś pola(?), zmiennej danego obiektu(jak w przykładzie $tablicaA) to powinienem napisać odpowiednią metodę danej klasy do tego? Na tym polega hermetyzacja? Hermetyzacja polega na tym ze obiekty udostepniaja tylko metody (swoj interfejs -- ktorym operujesz na obiektach), to jak one przechowywuja dane powinno byc ukryte przed pozostalymi obiektami. Np. * masz pole public $name; * inny obiekt odczytuje to pole * w koncu postanawiasz zmienic nazwe tego pola na 'nazwaCzegostam', i co? musisz przeszukac wszystkie pozostale obiekty i poprawic kod w miejscu, w ktorym uzywaly one tego pola a mozesz tez zrobic tak:
^^^ To jest wlasnie hermetyzacja. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 14:59 |