Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Klasy i obiekty
kamil1114
post
Post #1





Grupa: Zarejestrowani
Postów: 117
Pomógł: 0
Dołączył: 22.02.2008
Skąd: katowice

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


Czy ktoś mógłby mi wytłumaczyć w jakiś logiczny i zrozumiały sposób do czego służą klasy i obiekty ? Co zyskujemy korzystając z nich ? Czytam kursy o klasach i obiektach , ale dalej nie rozumiem o co chodzi. Proszę o wyjaśnienie i jakieś proste przykłady
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Quantum
post
Post #2





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


  1. class kwadrat {
  2. public $bok;
  3. public $pole;
  4. function pole() {
  5. $this->pole=$this->bok*$this->bok;
  6. return $this->pole;
  7. }
  8.  
  9. }
  10.  
  11. $obKwadrat=new kwadrat();
  12. $obKwadrat->bok=5 // bok;
  13. echo $obKwadrat->pole();


Niepotrzebnie zadeklarowana zmienna $pole, bezsens nadawać jej akcesor publiczny i przypisywać wartość w przypadku gdy ją zwracasz, po co Ci dodatkowy dostęp przez $obKwadrat->pole ?

Wiem, że podałeś tylko przykład, ale lepiej uczyć kogoś od początku poprawnie używać OOP.

  1. class pole
  2. {
  3. public function kwadrat($bok)
  4. {
  5. return pow($bok, 2);
  6. }
  7.  
  8. public function prostokat($bok1, $bok2)
  9. {
  10. return $bok1*$bok2;
  11. }
  12.  
  13. public function szescian($bok)
  14. {
  15. return 6*pow($bok, 2);
  16. }
  17. }
  18.  
  19. class objetosc
  20. {
  21. public function szescian($bok)
  22. {
  23. return pow($bok, 3);
  24. }
  25. }
  26.  
  27. $pole = new pole;
  28. print $pole->kwadrat(6);
  29. print $pole->szescian(3);
  30. $objetosc = new objetosc;
  31. print $objetosc->szescian(4);


Klas nie tworzysz dla jednej funkcji, w tym przypadku podzielimy je na pole i objętość, a w niej metody dla poszczególnych figur geometrycznych.

Pozdrawiam (IMG:style_emoticons/default/smile.gif)

Ten post edytował sniffer32 17.10.2009, 22:48:28
Go to the top of the page
+Quote Post

Posty w temacie
- kamil1114   [PHP]Klasy i obiekty   17.10.2009, 16:04:15
- - benio101   Nie spamuj! ... Ehh...   17.10.2009, 16:19:28
- - MateuszScirka   Benio101, przeciez autor napisal ze nic z kursow n...   17.10.2009, 17:08:13
- - marcio   CytatBenio101, przeciez autor napisal ze nic z kur...   17.10.2009, 17:15:40
- - kamil1114   Znalazłem taki kod: [PHP] pobierz, plaintext <?...   17.10.2009, 18:06:43
- - MateuszScirka   A no widzisz to jest dobre pytanie. Tez je zadawal...   17.10.2009, 18:17:17
- - kamil1114   Ale bez programowania obiektowego też można pisać ...   17.10.2009, 21:19:27
- - MateuszScirka   Są dobre, ale ciezej je zmodyfokowac. Zeby dodac j...   17.10.2009, 21:33:58
- - kamil1114   No właśnie , szukam tego sensu , bo dla mnie oop j...   17.10.2009, 21:40:11
- - MateuszScirka   Powiem tak, sam znam php na tyle na ile jest mi po...   17.10.2009, 21:48:03
- - sniffer32   [PHP] pobierz, plaintext class kwadrat { p...   17.10.2009, 22:44:37
- - MateuszScirka   czemu nie uzywasz wew klasy $this-> ?   18.10.2009, 19:26:00
- - marcio   Bo zmienne sa parametrami funkcji a nie polami dan...   19.10.2009, 07:44:41
- - kamil1114   A czy umiałby mi ktoś wytłumaczyć do czego służy o...   31.10.2009, 23:09:41
- - shark121   $this używamy odwołując się do czegoś wewnątr...   31.10.2009, 23:23:41
- - kamil1114   Mniej , więcej rozumiem , ale czy bez utworzenia w...   1.11.2009, 18:54:42
- - Smertius   $this używasz tylko wtedy kiedy odwołujesz si...   1.11.2009, 19:06:42
- - kamil1114   Czyli nie zadziałało by takie coś: [PHP] pobierz, ...   1.11.2009, 19:14:39
|- - Smertius   Cytat(kamil1114 @ 1.11.2009, 19:14:39...   1.11.2009, 19:21:07
|- - kamil1114   Cytat(Smertius @ 1.11.2009, 19:21:07 ...   1.11.2009, 19:35:40
- - fly474   Hej Patrząc na Twe pierwsze próby z programowanie...   1.11.2009, 19:16:53
- - Smertius   Może źle się wyraziłem, spójrz na poniższy kod [PH...   1.11.2009, 20:11:45
- - kamil1114   Teraz już rozumiem , dziękuję za pomoc. Jak się tr...   1.11.2009, 20:59:06
- - MateuszScirka   Sam wiem ze dziedziczenie polega na jakby hmm kopi...   1.11.2009, 21:06:49
- - Spawnm   klasa dziedzicząca może używać dóbr rodzica które ...   1.11.2009, 21:12:06


Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 11:29