1 / 14

NobleProg

NobleProg. Programowanie w języku C++. Programowanie w języku C++. CZĘŚĆ 4 – PROGRAMOWANIE OBIEKTOWE. Teoria - ogólnie.

kostya
Download Presentation

NobleProg

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NobleProg Programowanie w języku C++

  2. Programowanie w języku C++ CZĘŚĆ 4 – PROGRAMOWANIE OBIEKTOWE

  3. Teoria - ogólnie Programowanie obiektowe - (ang. object- oriented programming - OOP ) - metodologia tworzenia programów komputerowych, która definiuje programy za pomocą "obiektów" - elementów łączących stan (czyli dane) i zachowanie (czyli procedury, tu: metody). Obiektowy program komputerowy wyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzy sobą w celu wykonywania zadań. Podejście to różni się od tradycyjnego programowania proceduralnego, gdzie dane i procedury nie są ze sobą bezpośrednio związane. Programowanie obiektowe ma ułatwić pisanie, konserwację i wielokrotne użycie programów lub ich fragmentów.

  4. Specyfikatory dostępu Służą one do kontroli możliwości dostępu do poszczególnych składowych klasy. Public – składowe publiczne, dostępne wszędzie, również poza klasą Private(default) – składowe prywatne, widoczne jedynie wewnątrz samej klasy – dla jej własnych metod Protected – zasady dostępu są takie same jak w przypadku specyfikatora Private, z jedną tylko różnicą – składowe oznaczone jako Protected będą widoczne w klasach pochodnych, jako Private, nie.

  5. Definicja klasy Klasa składa się ze słowa kluczowego class oraz nazwy klasy. Zasady tworzenia nazw klas są takie same jak dla zmiennych. Wewnątrz klasy znajdują się pola i metody klasy oraz ich specyfikatory dostępu. Kod 28

  6. Pola i metody klasy Są to zmienne które znajdują się wewnątrz klasy, zgrupowane wewnątrz obiektu w jedną całość, przechowujące stan obiektu – wartości zmiennych. Są to najważniejsze elementy, do których dostęp zazwyczaj określamy jako prywatny (Private). Wartości pól klasy modyfikujemy bądź pobieramy za pomocą metod klasy. Metody to funkcje będące częścią składową klasy. Dostęp do nich ograniczony jest odpowiednimi specyfikatorami. Ponownie kod 28

  7. Obiekt - instancja Obiekt to stworzenie konkretnego wystąpienia danej klasy (klasa ożywa). Przykładowo, mamy klasę Samochodzik, jej obiektem będzie konkretne wystąpienie, np. VW lub Opel

  8. Przykładzik Kod 29

  9. Konstruktor Kod 30

  10. Dziedziczenie Można też dziedziczyć wiele klas np. Class prostokąt : public figura, public zestaw { } Kod 31

  11. Metoda statyczna Można ją wywoływać bez odniesienia do obiektu Kod 31a

  12. Metoda wirtualna - polimorfizm Po skompilowaniu na ekranie zobaczymy dwa wypisy: "Tu funkcja pisz z klasy A". Stało się tak dlatego, że wskaźnik jest do typu A. Gdy ustawiliśmy wskaźnik na obiekt typu pochodnego, a następnie wywołaliśmy funkcję składową, to kompilator sięgnął po funkcję pisz z klasy bazowej. Kod 32 (prawie )

  13. Metoda wirtualna Kod 32 (prawie ) Można jednak określić żeby kompilator nie sięgał po funkcję z klasy bazowej, ale sam się zorientował na co wskaźnik pokazuje. Do tego służy przydomek virtual, a funkcja składowa nim oznaczona nazywa się wirtualną. Różnica polega tylko na dodaniu słowa kluczowego virtual, co wygląda tak:

  14. Dziękuję za uwagę

More Related