Nadpisywanie składnika i sterowanie dostępem w klasie dziedziczącej |
Nadpisywanie składnika i sterowanie dostępem w klasie dziedziczącej |
28.05.2011, 11:04:20
Post
#1
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) |
Przykład skopiowany z manula, więc myślę że źródło najbardziej wiarygodne jakie może być:
http://www.php.net/manual/pl/language.oop5.visibility.php Jednej rzeczy nie rozumiem dlaczego w klasie MyClass2 nie można się odwołać do echo $obj2->protected; skoro wcześniej zasłania ona zmienną z klasy podstawowej zresztą jeśli jest protected to nawet gdyby nie było zasłonięcia powinniśmy się móc odwołać do składnika protected z klasy podstawowej
Ten post edytował amii 28.05.2011, 11:15:32 -------------------- gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet. Zarabianie bez wysiłku na domenach bez ruchu: prolink. |
|
|
28.05.2011, 11:20:13
Post
#2
|
|
Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) |
Dlatego, że odwołujesz się do niego w kodzie, który nie znajduje się ani w klasie MyClass, ani MyClass2.
-------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
28.05.2011, 11:27:40
Post
#3
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) |
I wszystko jasne dopiero zaczynam się uczyć obiektówki i takie rzeczy męczą a dla starych wyjadaczy to zapewne pestka.
Poprawna wersja:
Ten post edytował amii 28.05.2011, 11:33:41 -------------------- gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet. Zarabianie bez wysiłku na domenach bez ruchu: prolink. |
|
|
28.05.2011, 12:54:37
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
Jak rozumiem ten kod, który opatrzyłeś komentarzami jest umieszczony wewnątrz jakiejś metody, tak?
Operator paamayim nekudotayim (genialna nazwa swoją drogą) używany jest przy odwołaniach statycznych. Wyjątkiem jest jedynie tutaj konstrukcja "parent::xxx" (deweloperzy PHP popisali się tutaj inteligencją...). Właściwości dynamicznych nie możesz używać jak statycznych (self::, MyCLass::$protected) - musiałbyś zadeklarować je jako statyczne (wtedy zaś nie mógłbyś się do nich odwoływać jak do dynamicznych). |
|
|
28.05.2011, 14:18:57
Post
#5
|
|
Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) |
Teraz te odwołania są w metodzie printHello()
1. Czyli jak rozumiem mamy tu dwa rodzaje dostępu dla składników statycznych (które mogą być zasłonięte lub nie) i do składników dynamicznych (które mogą być zasłonięte lub nie) tak jak we wzorcu poniżej.
-------------------- gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet. Zarabianie bez wysiłku na domenach bez ruchu: prolink. |
|
|
Wersja Lo-Fi | Aktualny czas: 26.04.2024 - 05:25 |