Architektura Javy jest zbiorem komponentów, tj. JVM, JRE, I JDK . To integruje proces interpretacji i kompilacji. Definiuje wszystkie procesy związane z tworzeniem programu Java. Architektura Javy wyjaśnia każdy krok kompilacji i wykonywania programu.
Architektura Javy można wyjaśnić, wykonując następujące kroki:
- W Javie istnieje proces kompilacji i interpretacji.
- Kompilator Java konwertuje kod Java na kod bajtowy.
- Następnie JVM konwertuje kod bajtowy na kod maszynowy.
- Kod maszynowy jest następnie wykonywany przez maszynę.
Poniższy rysunek przedstawia Architektura Javy w którym każdy krok jest szczegółowo opracowany graficznie.
Teraz zanurkujmy głęboko, aby zdobyć więcej wiedzy na temat Architektura Javy . Ponieważ wiemy, że architektura Java jest zbiorem komponentów, dlatego szczegółowo omówimy każdy komponent.
Komponenty architektury Java
Architektura Java obejmuje trzy główne komponenty:
- Wirtualna maszyna Java (JVM)
- Środowisko wykonawcze Java (JRE)
- Zestaw programistyczny Java (JDK)
Maszyna wirtualna Java
Główną cechą Javy jest WORA . WORA oznacza Napisz raz, biegnij gdziekolwiek . Funkcja ta oznacza, że możemy napisać nasz kod raz i używać go w dowolnym miejscu i systemie operacyjnym. Nasz program Java może uruchomić dowolną platformę tylko dzięki Wirtualnej Maszynie Java. Jest to komponent platformy Java, który zapewnia nam środowisko do wykonywania programów Java. Głównym zadaniem JVM jest konwersja kodu bajtowego na kod maszynowy.
JVM najpierw ładuje kod do pamięci i go weryfikuje. Następnie wykonuje kod i udostępnia środowisko wykonawcze. Wirtualna maszyna Java (JVM) ma własną architekturę, która jest podana poniżej:
Architektura JVM
JVM to abstrakcyjna maszyna zapewniająca środowisko, w którym wykonywany jest kod bajtowy Java. Spadająca liczba reprezentuje architekturę JVM.
Moduł ładujący klasy: ClassLoader to podsystem służący do ładowania plików klas. ClassLoader najpierw ładuje kod Java za każdym razem, gdy go uruchamiamy.
Obszar metody klasowej: W pamięci znajduje się obszar, w którym przechowywane są dane klasy podczas wykonywania kodu. Obszar metod klasy przechowuje informacje o zmiennych statycznych, metodach statycznych, blokach statycznych i metodach instancji.
Sterta: Obszar sterty jest częścią pamięci JVM i jest tworzony podczas uruchamiania JVM. Jego rozmiar nie może być statyczny, ponieważ zwiększa się lub zmniejsza w trakcie działania aplikacji.
Stos: Nazywa się go również stosem wątków. Jest tworzony dla pojedynczego wątku wykonawczego. Wątek używa tego obszaru do przechowywania elementów, takich jak wynik częściowy, zmienna lokalna, dane używane do wywoływania metody i zwracane wartości itp.
Stos natywny: Zawiera informacje o wszystkich natywnych metodach stosowanych w naszej aplikacji.
Silnik wykonawczy: Jest to centralna część JVM. Jego głównym zadaniem jest wykonanie kodu bajtowego i wykonanie klas Java. Silnik wykonawczy składa się z trzech głównych komponentów używanych do wykonywania klas Java.
Natywny interfejs Java
drzewo binarne
Java Native Interface działa jako mediator pomiędzy wywołaniami metod Java i bibliotekami natywnymi.
Środowisko wykonawcze Java
Zapewnia środowisko, w którym wykonywane są programy Java. JRE pobiera nasz kod Java, integruje go z wymaganymi bibliotekami, a następnie uruchamia maszynę JVM w celu jego wykonania. Aby dowiedzieć się więcej o środowisku Java Runtime Environment, Kliknij tutaj .
Zestaw narzędzi programistycznych Java
Jest to środowisko programistyczne używane do tworzenia aplikacji i apletów Java. Zestaw Java Development Kit zawiera środowisko JRE, kompilator, interpreter lub moduł ładujący oraz kilka narzędzi programistycznych. Aby dowiedzieć się więcej o zestawie Java Development Kit, kliknij tutaj.
Są to trzy główne komponenty architektury Java. Wykonanie programu odbywa się za pomocą wszystkich tych trzech komponentów.