Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Róznica między klasami
gothye
post
Post #1





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


witam
zaczynam OOP ale napotałem sie na 2 rózne zapisy klas PHP :


  1. class test
  2. {
  3. private static $foo = 'hello' ;
  4.  
  5. public function pokaz()
  6. {
  7. echo self::$foo ;
  8. }
  9. // nie dziala
  10. public function __construct()
  11. {
  12. echo 'hello' ;
  13. }
  14.  
  15. // nie dziala
  16. public function __destruct()
  17. {
  18. echo 'bye' ;
  19. }
  20. }
  21.  
  22. test::pokaz() ;
  23.  
  24. /*********** druga clasa *************/
  25. class test
  26. {
  27. private $foo = 'hello' ;
  28.  
  29. public function pokaz()
  30. {
  31. echo self::$foo ;
  32. }
  33. // dziala
  34. public function __construct()
  35. {
  36. echo 'hello' ;
  37. }
  38.  
  39. // dziala
  40. public function __destruct()
  41. {
  42. echo 'bye' ;
  43. }
  44. }
  45.  
  46. $test = new test();
  47. $test->pokaz();


może ktoś wyjaśnić gdzie i dlaczego sie stosuje zapisy ? i który jest prawidłowy ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
JohnnyB
post
Post #2





Grupa: Zarejestrowani
Postów: 76
Pomógł: 19
Dołączył: 19.01.2010

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


Cytat(gothye @ 31.05.2010, 18:05:39 ) *
może ktoś wyjaśnić gdzie i dlaczego sie stosuje zapisy ? i który jest prawidłowy ?


obie klasy są jak najbardziej prawidłowe (IMG:style_emoticons/default/smile.gif)

różnica tkwi sposobie wywołania - w pierwszym przykładzie wywołanie jest statyczne, a więc nie jest w ogóle tworzony obiekt, więc nie ma okazji do wywołania konstruktora i destruktora.
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: 11.10.2025 - 21:35