Czy klasa abstrakcyjna może mieć metody inne niż abstrakcyjne?
Czy klasa abstrakcyjna może mieć metody inne niż abstrakcyjne?

Wideo: Czy klasa abstrakcyjna może mieć metody inne niż abstrakcyjne?

Wideo: Czy klasa abstrakcyjna może mieć metody inne niż abstrakcyjne?
Wideo: Java Interview Questions #56 - Can an abstract class have both abstract and non-abstract methods? 2024, Grudzień
Anonim

tak my może mieć jakiś klasa abstrakcyjna z pominięciem Metody abstrakcyjne ponieważ oba są niezależnymi koncepcjami. Deklarowanie klasa abstrakcyjna oznacza, że to Móc nie być tworzonym samodzielnie i Móc być tylko podklasy. Deklarowanie streszczenie metody oznacza, że Metoda będzie być zdefiniowane w podklasie.

Ludzie również pytają, czy klasa abstrakcyjna może definiować zarówno metody abstrakcyjne, jak i metody nieabstrakcyjne?

jakiś metoda abstrakcyjna jest metoda w dziecku klasa który zastępuje rodzica metoda . Czy klasa abstrakcyjna może definiować zarówno metody abstrakcyjne, jak i nie - metody abstrakcyjne ? A. Nie, musi mieć wszystko jedno lub drugie.

Dodatkowo, czy interfejs AN może mieć nie abstrakcyjne metody? Metody interfejsu są z definicji publiczne i abstrakcyjny , więc nie możesz mieć nie - metody abstrakcyjne w Twoim berło . W Javie metody interfejsu są publiczne i abstrakcyjny domyślnie. Więc pierwsza opcja to zła praktyka.

Następnie można zapytać, czy możemy mieć metodę abstrakcyjną w klasie nieabstrakcyjnej?

Ono może mieć abstrakcyjne metody ( metody bez korpusu) jak i betonu metody (regularny metody z ciałem). Normalny klasa ( nie - klasa abstrakcyjna ) Nie mogę mieć abstrakcyjne metody . jakiś klasa abstrakcyjna może nie tworzyć instancji, co oznacza, że nie możesz tworzyć jej obiektu.

Jaki jest pożytek z klasy abstrakcyjnej bez metody abstrakcyjnej w Javie?

Klasa abstrakcyjna bez metody abstrakcyjnej oznacza, że możesz stworzyć obiekt tego klasa abstrakcyjna . Zobacz mój przykład. Jeśli napiszesz jeden metoda abstrakcyjna wewnątrz klasa abstrakcyjna to się nie skompiluje. Co oznacza, że jeśli tworzysz klasa abstrakcyjna bez metody abstrakcyjnej następnie możesz stworzyć obiekt tego Klasa abstrakcyjna.

Zalecana: