Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> inicjaliowanie klasy B obiektem klasy A czy ... ?
jakub_klamca
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 24.07.2006

Ostrzeżenie: (0%)
-----


Witam,
wlasnie nastal radosny czas w ktorym zostalem zmuszony do zaglebienia sie w OOP, jak dotadnatknalem sie na taki problem :

Klasa A inicjalizowana 3 zmiennymi typu get. ( new A(get1, get2, get3); ) posiada:
- wlasciwosci - (ustawiane w konstruktorze, czasem zmieniane przez ktoras z metod)
- metody

Klasa B posiada :
- wlasciwosci - czesc jest wyznaczana na podstawie wlasciwosci klasy A w konstruktorze
- wlasne metody
- byc moze dziedziczenie metod kasy A (o tym dalej).


Ktore z tych rozwiazan bylo by bardziej poprawne : dziedziczenie (B extends A), ale ... klasa A jest inicjalizowana zmiennymi get (i na ich podstawie ustawiane sa wartosci "jej" wlasciwosci) , czy mam w takim razie zainicjalizowac klase B tymi zmiennymi, a w jej ktonstruktorze jeszcze raz zainicjalizowac klase A (po to zeby "jej" wlasciwosci mialy odpowiednie wartosci ), czy inicjalizowac klase B (w dlaszym ciagu B extends A, w celu uzyskania dostepu do metod klasy A wewnatrz B ) obiektem klasy A i dodatkowo w klasie A utworzyc nowa metode(wywolywana z konstruktora (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) , ktora na podstawie otrzymanego obiektu ustawi odpowiedni wartosci wlasciwosci ?

Byc moze zapedzilem sie w sklepy zaulek, a rozwiazanie jest znacznie prostsze i eleganckie, ale to dopiero moje pierwsze dni z OOP

--------------- edit

wszystkie instrukcje z metody inicjalizujacej klase A, mogly by sie znalezc w konstruktorze klasy B (przyslonienie) , ale wygodniej jest mi je trzymac poki co w klasie A, bo ta w zaleznosci od sytuacji bedzie inicjalizowana w jeszcze inny sposob.

Ten post edytował jakub_klamca 9.02.2007, 14:10:35
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 02:27