W dowolnym języku programowania abstrakcja oznacza ukrycie nieistotnych szczegółów przed użytkownikiem, aby skupić się tylko na istotnych szczegółach w celu zwiększenia wydajności, a tym samym zmniejszenia złożoności. W Javie abstrakcję osiąga się za pomocąabstrakcyjne klasy i metody. Dowiedzmy się więcej o metodzie abstrakcyjnej w .
co to jest .format w Pythonie
Tematy omówione w tym artykule są następujące:
- Co to jest klasa abstrakcyjna?
- Co to jest metoda abstrakcyjna w Javie?
- Ket cechy metody abstrakcyjnej
- Przykładowy program: metoda abstrakcyjna w Javie
- Interfejs w Javie
Co to jest klasa abstrakcyjna?
W jakimkolwiek , klasa zadeklarowana za pomocą słowa kluczowego abstrakcyjny jest znana jako klasa abstrakcyjna. Na Klasa abstrakcyjna przechwytuje wspólne cechy podklas i może zawierać lub nie zawierać żadnych metoda abstrakcyjna . Nie można jej utworzyć instancji, ale może być używana tylko jako nadklasa przez jej podklasy.
Poniżej wymieniono kilka kluczowych punktów dotyczących klasy abstrakcyjnej:
- Klasa abstrakcyjna może mieć konstruktorzy i metody statyczne
- Może mieć metody końcowe , zmuszają podklasę, aby nie zmieniała treści metody
- Możesz użyć klasy abstrakcyjnej, dziedzicząc ją z innej klasy, a następnie zapewnić implementacje dla metod abstrakcyjnych w niej
- Jeśli klasa abstrakcyjna nie ma implementacji żadnej metody, zawsze lepiej jest użyć berło
Klasa zadeklarowana jako abstrakcyjna może, ale nie musi, zawierać metody abstrakcyjne. Ale czym właściwie jest metoda abstrakcyjna?
Co to jest metoda abstrakcyjna?
Metoda zadeklarowana bez treści (bez implementacji)w klasie abstrakcyjnej jest plik metoda abstrakcyjna. Innymi słowy, jeśli chcesz mieć klasa aby zawierała określoną metodę, ale chcesz, aby rzeczywista implementacja tej metody była określana przez klasy potomne, możesz zadeklarować metodę w klasie nadrzędnej jako abstrakcję.
różnica między final final i finalize in java
Tak wygląda metoda abstrakcyjna w Javie:
abstrakcyjne środowisko void public ()
Kluczowe cechy metody abstrakcyjnej
Poniżej wymienione są kluczowe cechy metody abstrakcyjnej:
- Metody abstrakcyjne nie mają implementacji (treści), mają po prostu sygnaturę metody, jak pokazano w powyższym przykładzie
- Jeśli klasa ma metodę abstrakcyjną, powinna zostać uznana za abstrakcyjną, odwrotnie nie jest prawdą
- Zamiast nawiasów klamrowych metoda abstrakcyjna będzie miała na końcu średnik ()
- Jeśli zwykła klasa rozszerza klasę abstrakcyjną, wówczas klasa musi implementować wszystkie metody abstrakcyjne tej klasy lub też musi być zadeklarowana jako abstrakcyjna
Przykładowy program: metoda abstrakcyjna w Javie
Zapoznaj się z przykładowym programem, aby zrozumieć, w jaki sposób uzyskuje się abstrakcję za pomocą klas abstrakcyjnych i metod abstrakcyjnych. Spójrz.
pakiet MyPackage // klasa abstrakcyjna klasa abstrakcyjna Animal {String AnimalName = '' Animal (String name) {this.AnimalName = name} // deklaruj metody nieabstrakcyjne // ma domyślną implementację public void BasicInfo (String details) {System. out.println (this.AnimalName + '' + details)} // abstrakcyjne metody, które zostaną // zaimplementowane przez jego podklasę (y) abstract public void habitat () abstract public void respiration ()} class Terrestrial extends Animal {// constructor Terrestrial (String name) {super (name)} @Override public void habitat () {System.out.println ('leave on land and')} @Override public void respiration () {System.out.println ('respire przez płuca lub tchawicę. ')}} class Aquatic extends Animal {// constructor Aquatic (String name) {super (name)} @Override public void habitat () {System.out.println (' Pozostawia w wodzie i ') } @Override public void respiration () {System.out.println ('oddychaj przez skrzela lub ich skórę.')}} Class AbstractClassDemo {public static voi d main (String [] args) {// tworzenie obiektu klasy Terrestrial // i używanie odwołania do klasy Animal. Animal object1 = new Terrestrial ('Humans') object1.BasicInfo ('są istotami ziemskimi, one') object1.habitat () object1.respiration () System.out.println ('') // tworzenie obiektów klasy Circle Animal object2 = new Aquatic ('Ryby') object2.BasicInfo ('są istotami wodnymi, one') object2.habitat () object2.respiration ()}}
Wynik:
Metoda Podstawowa informacja () jest który jest używany przez oba Ziemski i Wodny zajęcia. Metody siedlisko() i oddychanie() są metodami abstrakcyjnymi i nie mają żadnej implementacji, tylko podpis. Ziemski i Wodny klasy muszą zapewnić własną implementację dla obu tych metod. Zwróć też uwagę, że obie metody zaczynają się od słowa kluczowego abstrakcyjny . W tym momencie możesz się zastanawiać, jak to jest Klasa abstrakcyjna różni się od berło .
Interfejs w Javie
Inny sposób na osiągnięcie abstrakcja w Javie za pomocą interfejsy . Interfejs jest zbiorem abstrakcyjnych metod, nie ma żadnego konkretu , w przeciwieństwie do klasy abstrakcyjnej. Jednak w przeciwieństwie do klasy abstrakcyjnej interfejs zapewnia pełną abstrakcję w Javie. Może mieć zarówno metody, jak i zmienne, tak jak klasa. Jednak metody zadeklarowane w interfejsie są domyślnie abstrakcyjne.
co to jest echo w php
Klasy abstrakcyjne i interfejsy to dwa główne elementy składowez . Chociaż oba są używane głównie do abstrakcji, bardzo się od siebie różnią i nie można ich używać zamiennie.
To prowadzi nas do końca artykułu „Metoda abstrakcyjna w Javie”. Omówiłem jeden z najczęściej zadawanych pytań , która jest klasą abstrakcyjną w Javie.
Upewnij się, że ćwiczysz jak najwięcej i cofnij swoje doświadczenie.
Sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Masz do nas pytanie? Proszę wspomnieć o tym w sekcji komentarzy tej „Metody abstrakcyjnej w Javie” artykuł, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.