Interfejs (programowanie obiektowe): Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
Pieczebi37 (dyskusja | edycje) m błąd skladniowy; między nazwą metody a nawiasami okrągłymi nie powinny znajdować się spacje Znaczniki: Z urządzenia mobilnego Z wersji mobilnej (przeglądarkowej) |
Klasa Abstrakcyjna a interfejs |
||
Linia 25:
</source>
== Interfejs a Klasa Abstrakcyjna ==
między w/w typami danych są 3 zasadnicze różnice:
*interfejsy mogą zawierać tylko deklaracje danych metod – nie mogą zawierać w sobie konkretnie zaimplementowanych metod (poza metodami statycznymi oraz domyślnymi). Klasy abstrakcyjne mogą natomiast zawierać konkretną implementację danych metod, dzięki czemu mogą definiować podstawową funkcjonalność.
* interfejs może rozszerzać mnogą ilość interfejsów, oraz że klasy mogą implementować również mnogą ilość interfejsów. Rozszerzając klasę abstrakcyjną klasa może uczestniczyć jedynie w jednej hierarchii, natomiast używając interfejsów klasa może uczestniczyć w wielu typach hierarchii.
* interfejsy - w przeciwieństwie do klas abstrakcyjnych - wymagają od użytkownika implementacji wszystkich metod w nich zawartych. Ponadto Klasy abstrakcyjne mogą ułatwić ten proces, umożliwiając podstawową implementację danej funkcjonalności.<ref>http://it-leaders.com.pl/pl/rozmowa-kwalifikacyjna-javy-zaden-problem-cz-iii-core/</ref>
[[Kategoria:Programowanie obiektowe]]
|