![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam taki problem... (skąd my to znamy? (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ) Mam obiekt USER i dziedziczący po nim STUDENT. Obiekt USER tworzy się automatycznie w mechanizmie sesji. Czasem jednak zachodzi potrzeba "rozbudowania" tego obiektu do STUDENT'a (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) I teraz jest takie pytanie jak zmienić istniejący obiekt USER na dziedziczący po nim STUDENT? Z góry dzięki. Pozdrawiam! |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ogólnie po to są właściwości prywatne, aby nawet dziedziczące klasy nie wpychały do nich nosa. Reprezentować powinny wewnętrzny stan obiektu, który powinien być tylko dla niego dostępny. Więc próba dostępu do nich przez obiekt dziedziczący jest, z punktu widzenia teoretycznego, bezsensowna.
Tak więc moim zdaniem powinno się dać to inaczej rozwiązać, np. przez pobieranie potrzebnych informacji przez metody. Jeśli nie możesz się do nich dostać inaczej nie przez normalny interfejs, to znaczy że 1) próbujesz zrobić coś czego nie powinieneś 2) klasa którą chcesz wykorzystać jest źle napisana. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 04:14 |