![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 23.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Bracia i Siostry w obiektowym PHP, pomóżcie :-)
Przełączam się ze strukturalnego PHP na obiektowy i mam problem z wywoływaniem metod, których właścicielami są obiekty będące własnościami innych obiektów. Przeszukałem forum, poszperałem w sieci, ale odpowiedzi nie znajduję (nie wykluczam, że po prostu mój pomysł do drapanie lewą ręką w prawe ucho i dlatego nie widzę rozwiązań...) Żeby wyjaśnić: Moje zadanie polega na tym, aby stworzyć sobie klasę World, która składa się ze swego rodzaju tablic dwuwymiarowych, pełniących funkcję "warstw" (jak na mapie cyfrowej). Tablice te powinny być osobnymi klasami (bo inne metody są dla warstwy "typu" A, a inne - dla warstwy "typu" B ).Wykoncypowałem sobie, że potrzebna mi będzie najpierw klasa Pole, z której dziedziczyć będą "warstwy" różnego typu (np. inny będzie sposób wyświetlania). Napisałem sobie klasę Pole, mniej więcej taką:
Teraz tworzę sobie klasę LayerA, która dziedziczy po Pole, ale ma inny sposób wyświetlania (są też podobne klasy LayerB, LayerC itd. różniące się metodą show).
Teraz buduję klasę World, która powinna składać się z kilku obiektów klasy LayerA i podobnych (w konstruktorze odpowiednie obiekty tworzy)
Problem zaczyna się w momencie tworzenia programu głównego. Jak wywołać metodę obiektu będącego własnością klasy World. Poniższy kod nie działa:
Gdzie popełniam błąd? Z góry dzięki za pomoc - i wszystkim Wesołych Świąt! I dużo zdrowych obiektów w Nowym Roku! Ravenshade Ten post edytował ravenshade 23.12.2010, 12:27:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 05:24 |