Dziedziczenie a kompozycja

Założenie: Przedstawimy różnicę między dziedziczeniem a kompozycją w PHP na prostym przykładzie.

Krok po kroku:

  1. Stworzenie klasy `Silnik` reprezentującej silnik samochodu:
    
    
    				

    Ta klasa definiuje prosty silnik z metodą `dzialaj()`.

  2. Stworzenie klasy `Samochod` używającej kompozycji:
    
    silnik = $silnik;
      }
    
      public function jedz() {
        $this->silnik->dzialaj();
        echo "Samochód jedzie!\n";
      }
    }
    ?>
    				

    Klasa `Samochod` wykorzystuje kompozycję, składając się z obiektu klasy `Silnik`. Konstruktor wymaga przekazania obiektu `Silnik`.

  3. Utworzenie obiektu `Silnik` i `Samochod` oraz użycie metody `jedz()`:
    
    jedz();
    ?>
    				

    Tutaj tworzymy obiekty i wywołujemy metodę `jedz()`, która uruchamia silnik i informuje, że samochód jedzie.

Ten przykład pokazuje, jak kompozycja pozwala na tworzenie obiektów z innych obiektów, co jest elastyczniejszym podejściem niż dziedziczenie w wielu sytuacjach. Zachęcamy do dalszego zgłębiania tematu programowania obiektowego w PHP!

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *