Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> mały problem z dziedziczeniem
kaem
post
Post #1





Grupa: Zarejestrowani
Postów: 248
Pomógł: 38
Dołączył: 29.06.2008

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


Jestem nowym użytkownikiem na forum, więc może na początek się przywitam. A więc witam (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) Niedawno zacząłem się uczyć PHP i napotkałem na taki oto problem: otóż mam dwie klasy, jedna dziedzicząca
CODE

class A
{
private $a1;
//...
}
class B extends A
{
var $a2;
//...
}

Potem wpisuje taki oto kod:
CODE

$b=new B();
$b->a1=11;
echo "$b->a1;";

I normalnie wyświetla mi wartość zmiennej $a1 równą 11, a przecież, z tego co wyczytałem klasa dziedzicząca nie powinna dziedziczyć pól prywatnych (IMG:http://forum.php.pl/style_emoticons/default/dry.gif) Nie powinno tu być jakiegoś błędu?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Heweliusz
post
Post #2





Grupa: Zarejestrowani
Postów: 46
Pomógł: 8
Dołączył: 19.03.2007
Skąd: z nad Jarugi

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


Mój skrypt wzoruje na phpbb3. Dlaczego więc podobny kod z klasy session.php działa normalnie ?
phpbb3 session.php
  1. <?php
  2. class user extends session
  3. {
  4. var $lang = array();
  5. var $help = array();
  6. var $theme = array();
  7. var $date_format;
  8. var $timezone;
  9. var $dst;
  10.  
  11. var $lang_name;
  12. var $lang_id = false;
  13. var $lang_path;
  14. var $img_lang;
  15. var $img_array = array();
  16.  
  17. /**
  18. * Setup basic user-specific items (style, language, ...)
  19. */
  20. function setup($lang_set = false, $style = false)
  21. {
  22. global $db, $template, $config, $auth, $phpEx, $phpbb_root_path, $cache;
  23.  
  24. if ($this->data['user_id'] != ANONYMOUS)
  25. {
  26. ...
  27. ?>

Używają normalnie tablicy $data, chociaż jest ona tworzona w klasie session. To właśnie mnie męczy :/

Ten post edytował Heweliusz 25.07.2008, 20:25:38
Go to the top of the page
+Quote Post

Posty w temacie
- kaem   mały problem z dziedziczeniem   29.06.2008, 13:28:09
- - revyag   A co masz w tej klasie ? To wygląda na jakby była ...   29.06.2008, 14:06:02
- - kaem   Właśnie chodzi mi o to, że to przypisanie nie powi...   29.06.2008, 14:29:35
- - revyag   Napisałem przecież żebyś pokazał jak wygląda kod k...   29.06.2008, 15:00:40
- - kaem   Gdyby w tej klasie było coś istotnego mogącego wpł...   29.06.2008, 15:15:23
- - dr_bonzo   W koncu konkretny kod ktory mozna uruchomic. Wiec ...   29.06.2008, 15:57:54
- - kaem   Hmm, no to rzeczywiście wygląda jakby PHP ustawiał...   29.06.2008, 16:38:32
- - dr_bonzo   __set() + rzucanie wyjatku   29.06.2008, 17:01:57
- - kaem   Ok, dzięki wielkie. Przejrzę sobie co nieco o tyc...   29.06.2008, 18:19:26
- - dr_bonzo   Ewentualnie w __set() mozesz po prostu nic nie rob...   29.06.2008, 18:47:21
- - kaem   Tak jak na początku napisałem, php'a zacząłem ...   29.06.2008, 22:43:46
- - Sedziwoj   Dlaczego w klasie B masz var? Przecież to kod PHP4...   30.06.2008, 09:34:16
- - kaem   Jeśli chce się używać modyfikatorów dostępu to wpi...   30.06.2008, 11:09:33
- - Sedziwoj   @kaem Ty nie rozumiesz, var to było w PHP4, odpowi...   30.06.2008, 11:16:38
- - kaem   No ok, pytam bo uczę się teraz z książki niby już ...   30.06.2008, 11:55:54
- - Sedziwoj   http://www.php.net/manual/en/language.oop5.visibil...   30.06.2008, 12:28:43
- - kaem   A no właśnie. Ja już używam PHP ver. 5.2.6 i dlate...   30.06.2008, 13:00:36
- - Heweliusz   Jeżeli można, chciałbym podpiąć się do tematu, mam...   24.07.2008, 18:42:14
- - kwiateusz   j.w. byl juz temat o tym ze dziedziczenie ma byc l...   24.07.2008, 22:04:59
- - manro   W klasie A zmienną a1 powinieneś zadekla...   24.07.2008, 22:23:04
- - Heweliusz   CytatCo do pytania które zostało podpięte do temat...   25.07.2008, 11:36:46
- - manro   Mała podpowiedź Klasa dziedzicząca dziedziczy pu...   25.07.2008, 11:44:04
- - Heweliusz   Mój skrypt wzoruje na phpbb3. Dlaczego więc p...   25.07.2008, 20:24:51
- - ARJ   zauważ wywołanie klasy user common.php [PHP] pobie...   25.07.2008, 21:14:20
|- - Sedziwoj   Cytat(ARJ @ 25.07.2008, 22:14:20 ) dz...   26.07.2008, 15:55:48
- - Heweliusz   Już wiem co było nie tak ^^ Nie zauważyłem, że kla...   26.07.2008, 17:38:16


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: 7.10.2025 - 08:49