Pakiet programów do zdalnego nauczania Programowania Orientowanego Obiektowo
Dzisiaj jest
Środa, 18 Lipiec 2018
Zarejestrowanych użytkowników: 4
Dostępnych pytań testowych: 102
HOME
Strona tytułowa pracy dyplomowej
NAUKA
Materiały dydaktyczne związane z OOP
TESTY
Sprawdzenie poziomu zdobytej wiedzy
ZASOBY
Literatura i zasoby sieciowe o OOP
ŹRÓDŁA
Zbiór projektów dydaktycznych z OOP
KONTO
Możliwość śledzenia własnych postępów
INFO



Osobliwości paradygmatu w różnych językach programowania

O ile można wyróżnić pewną wspólną bazę możliwości oferowaną przez większość języków wspierających programowanie w paradygmacie zorientowanym obiektowo to wiele z nich wprowadza wiele nowych funkcjonalności niedostępnych w innych językach lub rozszerza standardowy zestaw cech.

Jedne z subtelnych różnic dotyczące zachowania operatora protected w odniesieniu do klas bezpośrednio i pośrednio dziedziczących po danej klasie bazowej została przytoczone w jednej z kolejnych podsekcji. O ile w pewnych językach programowania składowa protected jest dostępna tylko z klasy bezpośrednio dziedziczącej to w innych wszystkie klasy pochodne (również te nie dziedziczące bezpośrednio po klasie bazowej) mogą odwoływać się do składowej chronione klasy bazowej.

W materiałach dydaktycznych została zwrócona uwaga na różnicę pomiędzy interfejsem i klasą abstrakcyjną. Interfejsem nazywa się klasę, która nie posiada żadnej implementacji (deklaruje tylko metody), natomiast klasą abstrakcyjną określa się klasę, które posiada pewien zalążek implementacji, ale w dalszym ciągu co najmniej jedna z metod pozostaje metodą czysto wirtualną.

Konsekwencja rozróżnialności klas na klasy abstrakcyjne i interfejsy wynika pośrednio z możliwości lub niemożliwości wielodziedziczenia, czyli dziedziczenia po wielu klasach naraz. Większość języków z powodu bezpieczeństwa oferuje tylko dziedziczenie na poziomie interfejsu (np. Java, gdzie można dziedziczyć po wielu klasach interfejsów). Jednakże są języki które wspierają wielodziedziczenie po wielu klasach konkretnych. Niestety wspomniana cecha mimo, iż w ogólnym przypadku może znacznie ułatwić implementacje niektórych rozwiązań jest źródłem problemów wynikających ze wspólnego nazewnictwa metod, dziedziczeniem po klasach posiadających wspólną klasę bazową i dziedziczeniu mogącym powodować pojawienie się cykli w hierarchii dziedziczenia.

Adamik Łukasz, Politechnika Śląska w Gliwicach (AEiI) - 2010/11