Wideo: Czy klasa abstrakcyjna Java może mieć konstruktora?
2024 Autor: Lynn Donovan | [email protected]. Ostatnio zmodyfikowany: 2023-12-15 23:51
Tak, i klasa abstrakcyjna może mieć a konstruktor w Jawa . Ty Móc albo wyraźnie podać konstruktor do klasa abstrakcyjna a jeśli nie, kompilator Wola dodaj domyślne konstruktor bez argumentów w klasa abstrakcyjna . Dotyczy to wszystkich zajęcia dotyczy to również klasa abstrakcyjna.
W konsekwencji, czy konstruktor może być abstrakcyjny w Javie?
Ty Móc nie mam abstrakcyjny konstruktor , jak abstrakcyjny oznacza, że musisz zapewnić implementację tego w pewnym momencie w swojej podklasie. Ale nie możesz przesłonić konstruktor . Tam Wola nie ma sensu mieć abstrakcyjny konstruktor : Ty Wola zawsze dzwoń konstruktor klasy potomnej, a nie klasy bazowej.
Podobnie, jak wywołać konstruktor klasy abstrakcyjnej? Możesz zdefiniować konstruktor w an klasa abstrakcyjna , ale nie możesz skonstruować tego obiektu. Jednak konkretne pod- zajęcia może (i musi) połączenie jeden z konstruktorzy zdefiniowane w abstrakcyjny rodzic klasa . Nie możesz połączenie jakiś konstruktor klasy abstrakcyjnej z klasa wyrażenie tworzenia instancji, tj.
Podobnie ludzie pytają, dlaczego klasa abstrakcyjna ma konstruktora?
A konstruktor w Javie tak naprawdę nie "buduje" obiektu, służy do inicjalizacji pól. Wyobraź sobie, że twój klasa abstrakcyjna ma pola x i y i że zawsze chcesz, aby były inicjowane w określony sposób, bez względu na to, jaka konkretna podklasa zostanie ostatecznie utworzona.
Czy klasa abstrakcyjna może mieć obiekty w Javie?
Ponieważ to jest abstrakcyjny i obiekt jest konkretny. Nie, projektanci nie podali sposobu. Ponieważ i klasa abstrakcyjna jest niekompletny klasa (niekompletny w sensie, w jakim zawiera) abstrakcyjny metody bez treści i danych wyjściowych) nie możemy utworzyć instancji lub obiekt ; tak samo, jak mówisz o interfejsie.
Zalecana:
Czy klasa abstrakcyjna może mieć konstruktora?
Tak, klasa abstrakcyjna może mieć konstruktor w Javie. Możesz albo jawnie podać konstruktor do klasy abstrakcyjnej, albo jeśli tego nie zrobisz, kompilator doda domyślny konstruktor bez argumentu w klasie abstrakcyjnej. Dotyczy to wszystkich klas i dotyczy również klasy abstrakcyjnej
Czy klasa abstrakcyjna może mieć modyfikatory dostępu?
Klasa Java zawierająca klasę abstrakcyjną musi być zadeklarowana jako klasa abstrakcyjna. Metoda abstrakcyjna może ustawić tylko modyfikator widoczności, jeden z publicznych lub chronionych. Oznacza to, że metoda abstrakcyjna nie może dodać do deklaracji modyfikatora statycznego ani końcowego
Jaka jest różnica między klasą abstrakcyjną a metodą abstrakcyjną?
Metody abstrakcyjne są wyłącznie deklaracjami i nie będą miały implementacji. Klasa Java zawierająca klasę abstrakcyjną musi być zadeklarowana jako klasa abstrakcyjna. Metoda abstrakcyjna może ustawić tylko modyfikator widoczności, jeden z publicznych lub chronionych. Oznacza to, że metoda abstrakcyjna nie może dodać do deklaracji modyfikatora statycznego ani końcowego
Czy klasa może mieć konstruktora?
Klasa może nie mieć konstruktora. (Ważnym rozróżnieniem jest to, że JVM nie wymaga, aby wszystkie pliki klas miały konstruktor; jednak każda klasa zdefiniowana w Javie ma konstruktor domyślny, jeśli konstruktor nie jest jawnie zadeklarowany
Czy klasa abstrakcyjna może mieć metody inne niż abstrakcyjne?
Tak, możemy mieć klasę abstrakcyjną bez metod abstrakcyjnych, ponieważ obie są niezależnymi koncepcjami. Zadeklarowanie abstrakcji klasy oznacza, że nie można jej utworzyć samodzielnie i można ją jedynie zaklasyfikować do podklas. Zadeklarowanie abstrakcyjnej metody oznacza, że Method zostanie zdefiniowana w podklasie