Interfejs (programowanie obiektowe): Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
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]]