Różnica między statycznym a końcowym w Javie

Spisu treści:

Różnica między statycznym a końcowym w Javie
Różnica między statycznym a końcowym w Javie

Wideo: Różnica między statycznym a końcowym w Javie

Wideo: Różnica między statycznym a końcowym w Javie
Wideo: what is the diff between static and final in java 2024, Lipiec
Anonim

Kluczowa różnica – statyczne vs ostateczne w Javie

Każdy język programowania ma określoną składnię. Programista powinien przestrzegać tych składni podczas pisania programów. Słowa kluczowe języków programowania mają określone znaczenia w zależności od zadań. Są one dostarczane przez język programowania i nie mogą być używane dla zmiennych zdefiniowanych przez użytkownika, metod, klas itp. Statyczny i końcowy to dwa słowa kluczowe w Javie. W tym artykule omówiono różnicę między statycznym a końcowym w Javie. Kluczową różnicą między static i final w Javie jest to, że static służy do definiowania składowej klasy, która może być używana niezależnie od dowolnego obiektu klasy, podczas gdy final służy do deklarowania zmiennej stałej lub metody, której nie można nadpisać, lub klasy, która nie mogą być dziedziczone.

Co jest statyczne w Javie?

Klasa składa się z członków danych (atrybutów) i metod. Aby wywołać metody, powinien istnieć obiekt tej konkretnej klasy. Gdy metoda jest zadeklarowana jako statyczna, nie jest konieczne tworzenie obiektu do wywołania tej metody. Metodę można wywołać przy użyciu nazwy klasy. Zapoznaj się z poniższym programem.

Różnica między statycznym a końcowym w Javie
Różnica między statycznym a końcowym w Javie

Rysunek 01: Program Java ze zmiennymi statycznymi i statyczną metodą

Zgodnie z powyższym programem klasa A zawiera zmienną liczbową i metodę wyświetlania. Oba są członkami statycznymi. Dlatego nie jest konieczne tworzenie obiektu, aby uzyskać dostęp do zmiennej liczby i sposobu wyświetlania. Programista może bezpośrednio wpisać nazwę klasy, aby wydrukować numer i wywołać wyświetlanie metody. Nie ma więc potrzeby tworzenia instancji obiektu. Jeśli zmienna liczba i metoda wyświetlania są niestatyczne, powinien istnieć obiekt typu A.

Różnica między statycznym a końcowym w Javie_Rysunek 02
Różnica między statycznym a końcowym w Javie_Rysunek 02

Rysunek 02: Użycie bloku statycznego

Powyższy program zawiera blok statyczny i główną metodę. Blok statyczny jest wywoływany podczas ładowania klasy. Dlatego instrukcja w bloku statycznym jest wykonywana przed instrukcją w bloku głównym. Jeśli istnieje wiele bloków statycznych, zostaną one wykonane po kolei.

Co jest ostateczne w Javie?

W programie mogą występować zmienne różnych typów. Jeśli istnieje zmienna jako int x=1; później w programie ta wartość zmiennej może zostać zmieniona na inną wartość. Zmienna zadeklarowana jako ostateczna i zainicjowana wartością nie może być później zmieniona w programie.

Różnica między statycznym a końcowym w Javie_Rysunek 03
Różnica między statycznym a końcowym w Javie_Rysunek 03

Rysunek 03: Program z końcową zmienną i dziedziczeniem

Według powyższego programu x jest zmienną końcową. Ma przypisaną wartość 5. Nie można jej zmienić na inną, ponieważ jest zadeklarowana jako ostateczna. Java obsługuje programowanie obiektowe (OOP). Jednym z filarów OOP jest polimorfizm. Nadrzędny jest jeden rodzaj polimorfizmu. Klasa A ma metodę wyświetlania. Klasa B rozszerza klasę A i posiada własną metodę wyświetlania. Podczas tworzenia obiektu typu B i wywołania metody wyświetlania wyświetli „B” jako wynik. Metoda wyświetlania klasy A jest zastępowana przez metodę wyświetlania klasy B.

Jeżeli programista ma unikać zastępowania metody, może użyć ostatniego słowa kluczowego dla tej metody. Jeśli metoda wyświetlania w klasie A jest ostateczna, metoda wyświetlania w klasie B da błąd, ponieważ tej metody nie można nadpisać.

Różnica między statycznym a końcowym w Javie_Rysunek 04
Różnica między statycznym a końcowym w Javie_Rysunek 04

Rysunek 04: ostatnie słowo kluczowe w metodzie

Kolejnym filarem OOP jest dziedziczenie. Pomaga ponownie wykorzystać już istniejący kod. Nowa klasa może wykraczać poza istniejącą klasę i wykorzystywać elementy członkowskie danych i metody istniejącej klasy. Jeśli konieczne jest zaprzestanie dziedziczenia klasy, programista może użyć słowa kluczowego „final”. Zapoznaj się z poniższym programem.

Ke3y Różnica między statycznym a końcowym w Javie
Ke3y Różnica między statycznym a końcowym w Javie

Rysunek 05: ostatnie słowo kluczowe w klasie

Zgodnie z powyższym programem klasa A jest deklarowana jako ostateczna. Gdy klasa B rozszerza A, daje błąd, ponieważ klasa A jest zadeklarowana jako ostateczna. Nie może być dziedziczona przez inne klasy.

Jakie jest podobieństwo między statycznym a końcowym w Javie?

Zarówno statyczne, jak i końcowe są słowami kluczowymi w Javie

Jaka jest różnica między statycznym a końcowym w Javie?

statyczny kontra końcowy w Javie

Słowo kluczowe statyczne oznacza, że można uzyskać dostęp do zmiennej lub metody składowej bez konieczności tworzenia instancji klasy, do której należy. Ostatnie słowo kluczowe oznacza jednostkę, którą można przypisać tylko raz.
Zmienne
Zmienne statyczne można ponownie zainicjować. Ostatecznych zmiennych nie można ponownie zainicjować.
Metody
Może być wywołany innymi metodami statycznymi i ma dostęp tylko do statycznych członków klasy. Ostateczne metody nie mogą być nadpisane.
Klasa
Nie można utworzyć obiektu klasy statycznej. Zawiera tylko statyczne elementy członkowskie. Ostateczna klasa nie może być dziedziczona przez inne klasy.
Zablokuj
Słowo kluczowe static może być użyte w bloku. Ostateczne słowo kluczowe nie jest używane z blokiem.

Podsumowanie – statyczne vs końcowe w Javie

W tym artykule omówiono dwa słowa kluczowe w Javie, takie jak statyczne i końcowe. Różnica między static a final w Javie polega na tym, że static służy do definiowania elementu klasy, który może być używany niezależnie od dowolnego obiektu klasy, podczas gdy final służy do deklarowania zmiennej stałej lub metody, której nie można nadpisać lub klasy, która nie może być dziedziczone.

Zalecana: