umieszczany jest w pamięci komputera, tym samym oznacza to, że nie jest zapisywany w postaci pliku na dysku. Z tego wynika, że kod po skończeniu działania programu jest po prostu niedostępny. [2] Ta metoda kompilacji została nazwana kompilacją JIT - Just-ln-Time (kompilacja w locie). Poprawa wydajności w stosunku do interpreterów kodu polega na buforowaniu bloków kodu, a nie interpretowaniu każdej linii po kolei za każdym razem gdy program jest otwierany. Kod źródłowy skompilowany do Beta-kodu nie jest przypisany do konkretnego komputera co sprawia, że może on być przenoszony miedzy rożnymi architekturami. Taki kod może być interpretowany lub uruchamiany na maszynie wirtualnej. Mimo, iż kompilacja JIT ma za zadanie przyśpieszenie wykonywania programów zwykle powoduje nieznacznie opóźnienie w początkowym etapie realizacji kodu. Wpływa na to czas potrzebny do załadowania i skompilowania Beta-kodu. Kod wykonuje się tym lepiej im więcej razy zostanie wykonany.[7] Receptą na potrzebę rozgrzewania się wyeliminowano przez stworzenie kompilatora AOT (ang. Ahead-of-time), który przed uruchomieniem kodu jeszcze raz go przekompilowuje wprowadzając przy tym zmiany, które poprawiają wydajność kodu.
W Javie oprócz błędów występują również wyjątki. Wyjątki są to określone sytuacje konfliktowe spowodowane przez niewłaściwe funkcjonowanie klas i metod. Przykładem wyjątków mogą być: dzielenie przez zero, brak pliku
0 podanej ścieżce, brak hosta o podanym adresie, czy też brak klasy. Wystąpienie wyjątku nie powoduje zazwyczaj przerwania pracy programu. Każdy wyjątek związany jest bezpośrednio z określoną klasą i jej metodami. Przykładowe wyjątki
1 ich klasy to:
• w pakiecie java.lang.1:
> ClassNotFoundExeption - brak klasy,
> ArraylndexOutOFBoundsExeption - przekroczenie zakresu tablicy,
> ArithmeticExeption - wyjątek operacji arytmetycznych np. dzielenie przez zero,
18
w pakiecie java.io.1;