Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie

Spisu treści:

Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie
Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie

Wideo: Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie

Wideo: Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie
Wideo: Difference between final, finally & finalized in java? #javainterview #finally #finalized 2024, Lipiec
Anonim

Kluczowa różnica – final vs final vs finalize w Javie

Ostateczny, na koniec i sfinalizowany to popularne terminy używane w programowaniu Java. Finał to słowo kluczowe. Może być używany do zmiennych, metod lub klas. Zmienne zadeklarowane jako final powinny być inicjowane tylko raz. Nie można ich zmienić. Ponieważ Java jest językiem obsługującym programowanie zorientowane obiektowo, umożliwia tworzenie klas z istniejących klas w celu poprawy możliwości ponownego wykorzystania kodu. Czasami może być konieczne unikanie używania istniejących klas. W tym celu można użyć finału. W programowaniu mogą wystąpić błędy i ważne jest, aby je obsłużyć w celu prawidłowego wykonania programu. Finalize to metoda wywoływana przez garbage collector. Tak więc wszystkie te terminy mają odpowiednio różne znaczenia. Final to słowo kluczowe, które zapobiega zmianie zmiennych, unika nadpisywania metod i unika rozszerzania klas. W końcu jest blok w obsłudze wyjątków, który będzie wykonywany niezależnie od tego, czy wyjątek zostanie zgłoszony, czy nie. Finalize to metoda wywoływana przez garbage collector, zanim całkowicie zniszczy obiekt. To jest kluczowa różnica ostatecznie sfinalizowana i sfinalizowana w Javie.

Co jest ostateczne w Javie?

Finał to słowo kluczowe w Javie. Ponieważ Java obsługuje programowanie zorientowane obiektowo, podklasy mogą korzystać ze zmiennych i metod już istniejącej klasy. Już istniejąca klasa to superklasa, a nowa klasa to podklasa. Jeśli programista chce uniemożliwić dostęp do zmiennej innym klasom, może zadeklarować zmienną jako „końcową”. Załóżmy na przykład, że istnieje zmienna jako p. Jest deklarowany jako ostateczny i inicjowany wartością 10.np. final int p=10. Jeśli wartość p zostanie ponownie zmieniona na 20, spowoduje to błąd w czasie kompilacji. Słowo kluczowe final uniemożliwia zmianę wartości zmiennej.

Klasa może używać metody, która jest już w istniejącej klasie. Załóżmy, że istnieje klasa o nazwie B, która ma metodę display(). Nowa klasa to C i rozszerza klasę B. Jeśli klasa C ma również metodę o nazwie display(), to oryginalna metoda display() klasy B jest zastępowana. Jeśli programista chce uniknąć nadpisania metody, może w końcu użyć słowa kluczowego. np. końcowy void display() { }. Ukończenie metody zapewnia, że funkcjonalność metody nigdy nie zostanie zmieniona.

Różnica między finalem finalnym a finalizacją w Javie
Różnica między finalem finalnym a finalizacją w Javie

Rysunek 01: ostateczny, ostateczny i sfinalizowany

Możliwe jest również użycie ostatniego słowa kluczowego dla klasy. Nowa klasa nie może dziedziczyć zmiennych i metod klasy końcowej. Jest to przydatne do zwiększenia bezpieczeństwa. Ponieważ klasa jest niedostępna przez podklasy, dane są chronione.

Co jest w końcu w Javie?

W programowaniu mogą wystąpić błędy. Błędy mogą powodować nieprawidłowe dane wyjściowe lub przerywać wykonywanie programu. Ważne jest, aby użyć jakiegoś mechanizmu, aby zapobiec tym nieoczekiwanym wynikom. Błędy mogą być dwojakiego rodzaju. Są to błędy czasu kompilacji i błędy czasu wykonania. Błędy czasu kompilacji występują z powodu błędów składniowych. Niektóre typowe błędy podczas kompilacji to brak średnika, brak nawiasów klamrowych, błędna pisownia identyfikatorów, słów kluczowych i niezadeklarowanych zmiennych. Kompilator nie utworzy pliku.class, dopóki te błędy nie zostaną naprawione.

Czasami mogą istnieć programy, które kompilują się poprawnie, ale dają błędne wyniki. Są to tak zwane błędy czasu wykonania. Niektóre typowe błędy środowiska uruchomieniowego polegają na przejściu liczby całkowitej przez zero i uzyskaniu dostępu do elementu, który jest poza granicami tablicy. Błędy te nie spowodują błędu w czasie kompilacji, ale dane wyjściowe są nieprawidłowe. Wyjątek to stan, który jest spowodowany błędem w czasie wykonywania w programie.

Gdy wystąpi błąd w czasie wykonywania, Java tworzy obiekt wyjątku i zgłasza go. Jeśli obiekt wyjątku nie zostanie prawidłowo przechwycony, wyświetli komunikat o błędzie i zakończy działanie programu. Jeśli programista chce kontynuować wykonywanie programu z resztą kodu, powinien przechwycić obiekt wyjątku i wyświetlić niezbędny komunikat do podjęcia działań naprawczych. Ten proces jest znany jako obsługa wyjątków.

W Javie try jest używane dla kodu, który może spowodować błąd i zgłosić wyjątek. Połów służy do obsługi wyjątku zgłoszonego przez blok try. Może istnieć wiele instrukcji catch. Instrukcje Final mogą służyć do obsługi wyjątku, który nie został przechwycony przez żadną z poprzednich instrukcji catch. Blok finally zostanie wykonany bez względu na to, czy zostanie zgłoszony wyjątek, czy nie. Zapoznaj się z podanym przykładem.

int p=10, q=5, r=5;

int odpowiedź;

spróbuj{

odpowiedź=p / (q – r);

}

catch (ArithmeticException e){

System.out.println(„Podzielone przez zero”);

}

wreszcie{

System.out.println(„Ostateczny blok jest wykonywany”);

}

Według powyższego przykładu wartość p jest dzielona przez zero i spowoduje to wyjątek. Dlatego jest przechwytywany przez instrukcję catch. Wydrukuje wiadomość podzieloną przez zero. Blok finally zostanie wykonany bez względu na to, czy wystąpił wyjątek, czy nie. Po komunikacie Podzielone przez zero zostanie wyświetlony komunikat w bloku Last. Dlatego wreszcie jest blok używany w obsłudze wyjątków.

Co jest finalizowane w Javie?

W OOP obiekty są tworzone przy użyciu klas. Metoda konstruktora może zainicjować obiekt, gdy jest zadeklarowany. Proces ten nazywa się inicjalizacją. Java ma również koncepcję zwaną finalizacją. Środowisko wykonawcze Java jest automatycznym odśmiecaczem. Automatycznie zwalnia zasoby pamięci używane przez obiekty. Odśmiecacz wywołuje tę metodę przed zniszczeniem obiektu.

Niektóre obiekty mogą zawierać zasoby niebędące obiektami. Jednym z przykładów jest deskryptor pliku. W takich sytuacjach moduł odśmiecania pamięci wywołuje metodę finalize. np. sfinalizować(). Ta metoda wykonuje przetwarzanie czyszczenia tuż przed zebraniem elementów bezużytecznych.

Jakie jest podobieństwo między finalizacją a finalizacją w Javie?

Wszystkie finalne, ostatecznie i sfinalizowane w Javie są używane w programowaniu Javy

Jaka jest różnica między finalizacją a finalizacją w Javie?

finał vs ostateczny vs finalizacja

finał Final to słowo kluczowe w Javie, które zapobiega zmienianiu zmiennych, pomijaniu metod i rozszerzaniu klas.
wreszcie Ostatecznie jest blokiem w obsłudze wyjątków Javy, który będzie wykonywany bez względu na to, czy wyjątek zostanie zgłoszony, czy nie.
finalizuj Finalizacja jest metodą w Javie, wywoływaną przez garbage collector, zanim całkowicie zniszczy obiekt.
Zastosowanie
finał Ostateczny dotyczy zmiennych, metod i klas.
wreszcie Ostatecznie można zastosować bloki try and catch.
finalizuj Sfinalizowanie dotyczy obiektów.

Podsumowanie – ostateczna vs finalna vs sfinalizowana w Javie

Ostateczny, nareszcie i sfinalizowany to popularne terminy używane w programowaniu w języku Java. Ich słowa wydają się takie same, ale mają różnicę. Final to słowo kluczowe, które zapobiega zmianie zmiennych, unikaniu nadpisywania metod i unikaniu rozszerzania klas. W końcu jest blok w obsłudze wyjątków, który będzie wykonywany niezależnie od tego, czy wyjątek zostanie zgłoszony, czy nie. Finalize to metoda wywoływana przez garbage collector, zanim całkowicie zniszczy obiekt. To jest różnica między final, final i finalize w programowaniu Java.

Pobierz plik PDF finalny vs finalny vs finalize w Javie

Możesz pobrać wersję PDF tego artykułu i używać jej do celów offline zgodnie z notatką cytowania. Proszę pobrać wersję PDF tutaj: Różnica między ostatecznym zakończeniem a sfinalizowaniem w Javie

Zalecana: