JDK vs JRE vs JVM: kluczowe różnice

Co to jest JDK?

JDK to środowisko programistyczne używane do tworzenia apletów i aplikacji Java. Pełna forma JDK to Java Development Kit. Programiści Java mogą go używać w systemach Windows, macOS, Solaris i Linux. JDK pomaga im kodować i uruchamiać programy w języku Java. Na tym samym komputerze można zainstalować więcej niż jedną wersję JDK.

Z tego samouczka dowiesz się:

  • Co to jest JDK?
  • Co to jest środowisko JRE?
  • Co to jest JVM?
  • Dlaczego warto używać JDK?
  • Dlaczego warto używać środowiska JRE?
  • Dlaczego JVM?
  • Funkcje JDK
  • Funkcje JRE
  • Cechy JVM
  • Jak działa JDK?
  • Jak działa środowisko JRE?
  • Jak działa maszyna JVM?
  • Różnica między JDK, JRE i JVM

Co to jest JRE?

JRE to oprogramowanie przeznaczone do uruchamiania innego oprogramowania . Zawiera biblioteki klas, klasę programu ładującego i maszynę JVM. Mówiąc prościej, jeśli chcesz uruchomić program Java, potrzebujesz JRE. Jeśli nie jesteś programistą, nie musisz instalować JDK, ale po prostu JRE, aby uruchamiać programy Java. Chociaż wszystkie wersje JDK są dostarczane w pakiecie z Java Runtime Environment, więc nie musisz pobierać i instalować JRE oddzielnie w swoim PC. Pełna forma środowiska JRE to Java Runtime Environment.

Co to jest JVM?

JVM to silnik zapewniający środowisko wykonawcze do sterowania kodem Java lub aplikacjami. Konwertuje kod bajtowy Java na język maszynowy. JVM jest częścią środowiska Java Run Environment (JRE). Nie można go oddzielnie pobrać i zainstalować. Aby zainstalować JVM, należy zainstalować JRE. pełną formą JVM jest Java Virtual Machine.

W wielu innych językach programowania kompilator tworzy kod maszynowy dla określonego systemu. Jednak kompilator Java tworzy kod dla maszyny wirtualnej nazywanej JVM.

KLUCZOWE RÓŻNICE

  • JDK to zestaw programistyczny, podczas gdy JRE to pakiet oprogramowania, który umożliwia uruchamianie programu Java, mając na uwadze, że JVM to środowisko do wykonywania kodu bajtowego.
  • Pełna forma JDK to Java Development Kit, podczas gdy pełną formą JRE jest Java Runtime Environment, a pełną formą JVM jest Java Virtual Machine.
  • JDK jest zależny od platformy, JRE jest również zależny od platformy, ale JVM jest niezależny od platformy.
  • JDK zawiera narzędzia do programowania, debugowania itp. JRE zawiera biblioteki klas i inne pliki pomocnicze, podczas gdy oprogramowanie narzędzia programistyczne nie są zawarte w JVM.
  • JDK jest dostarczany z instalatorem, z drugiej strony JRE zawiera tylko środowisko do wykonywania kodu źródłowego, podczas gdy JVM jest dołączone zarówno do oprogramowania JDK, jak i JRE.

Dlaczego warto używać JDK?

Oto ważne powody korzystania z JDK:

  • JDK zawiera narzędzia wymagane do pisania programów w języku Java oraz JRE, aby je wykonać.
  • Zawiera kompilator, program uruchamiający aplikacje Java, przeglądarkę apletów itp.
  • Kompilator konwertuje kod napisany w Javie na kod bajtowy.
  • Program uruchamiający aplikacje Java otwiera środowisko JRE, ładuje niezbędną klasę i wykonuje swoją główną metodę.

Dlaczego warto używać środowiska JRE?

Oto ważne powody używania środowiska JRE:

  • JRE zawiera biblioteki klas, JVM i inne pliki pomocnicze. Nie zawiera żadnego narzędzia do programowania w Javie, takiego jak debugger, kompilator itp.
  • Wykorzystuje ważne klasy pakietów, takie jak matematyka, swingetc, util, lang, awt i biblioteki uruchomieniowe.
  • Jeśli musisz uruchamiać aplety Java, w systemie musi być zainstalowane środowisko JRE.

Dlaczego JVM?

Oto ważne powody korzystania z JVM:

  • JVM zapewnia niezależny od platformy sposób wykonywania Java kod źródłowy.
  • Zawiera wiele bibliotek, narzędzi i struktur.
  • Po uruchomieniu programu Java możesz uruchomić go na dowolnej platformie i zaoszczędzić mnóstwo czasu.
  • JVM zawiera kompilator JIT (Just-in-Time), który konwertuje kod źródłowy Javy na język maszynowy niskiego poziomu. W związku z tym działa szybciej jako zwykła aplikacja.

Funkcje JDK

Oto ważne cechy JDK:

  • Umożliwia obsługę wielu rozszerzeń w jednym bloku catch.
  • JDK zawiera wszystkie funkcje, które ma JRE.
  • Zawiera narzędzia programistyczne, takie jak kompilator, debugger itp.
  • JDK zapewnia środowisko do tworzenia i wykonywania kodu źródłowego Java.
  • Można go zainstalować w systemach operacyjnych Windows, Unix i Mac.
  • Operator Diamond może być użyty do określenia interfejsu typu ogólnego zamiast pisać dokładny.

Funkcje JRE

Oto ważne cechy JRE:

  • Java Runtime Environment to zestaw narzędzi, za pomocą których JVM faktycznie działa.
  • JRE zawiera technologię wdrażania, w tym Java Web Start i wtyczkę Java.
  • Programiści mogą z łatwością uruchamiać kod źródłowy w środowisku JRE, ale nie mogą pisać i kompilować programu Java.
  • Obejmuje biblioteki integracyjne, takie jak Java Database Connectivity (JDBC), Remote Method Invocation (RMI), Java Naming and Directory Interface (JNDI) i więcej.
  • JRE ma klienta maszyny wirtualnej JVM i Java HotSpot.

Funkcje JVM

Oto ważne cechy JVM:

  • Umożliwia uruchamianie aplikacji w środowisku chmurowym lub w twoim urządzeniu.
  • Java Virtual Machine konwertuje kod bajtowy na kod specyficzny dla maszyny.
  • Zapewnia podstawowe funkcje java, takie jak zarządzanie pamięcią, bezpieczeństwo, usuwanie elementów bezużytecznych i inne.
  • JVM uruchamia program przy użyciu bibliotek i plików udostępnionych przez środowisko Java Runtime Environment.
  • JDK i JRE zawierają wirtualną maszynę Java.
  • Może wykonywać program java wiersz po wierszu, dlatego jest również nazywany interpretatorem.
  • JVM można łatwo dostosować, na przykład, możesz przydzielić mu minimalną i maksymalną pamięć.
  • Jest niezależne od sprzętu i systemu operacyjnego. Możesz więc raz napisać program Java i uruchomić go w dowolnym miejscu.

Jak działa JDK?

Funkcjonalność JDK

Oto ważne komponenty JDK:

  • JDK i JRE: JDK umożliwia programistom tworzenie podstawowych programów Java, które mogą być uruchamiane przez JRE, który zawierał JVM i biblioteki klas.
  • Biblioteki klas: Jest to grupa dynamicznie ładowanych bibliotek, które program Java może wywołać w czasie wykonywania.
  • Kompilatory: Jest to program Java, który akceptuje pliki tekstowe programistów i kompiluje się do Plik klasy Java. Jest to typowa forma danych wyjściowych podawana przez kompilator, która zawiera kod bajtowy Java. W Javie głównym kompilatorem jest Javac.
  • Debuggers: Debugger to program w języku Java, który umożliwia programistom testowanie i debugowanie programów w języku Java.
  • JavaDoc: JavaDoc to dokumentacja opracowana przez firmę Sun Microsystems dla języka Java. JavaDoc może służyć do generowania dokumentacji API w pliku HTML z programu źródłowego

How JRE Functions?

Funkcjonalność JRE

JRE zawiera wystąpienie maszyny JVM, klasy bibliotek i narzędzia programistyczne. Po napisaniu i skompilowaniu kodu Java kompilator generuje plik klasy zawierający kod bajtowy.

Oto ważne komponenty JRE:

  • Programy ładujące klasy: Moduł ładujący klasy ładuje różne klasy, które są niezbędne do uruchomienia programu Java. JVM korzysta z trzech programów ładujących klas, zwanych ładującymi klasami ładującymi, ładującymi klasy rozszerzeń i ładującymi klasy systemowe.
  • Weryfikator kodu bajtowego: weryfikator kodu bajtowego weryfikuje kod bajtowy, aby kod nie przeszkadzał interpreterowi.
  • Interpreter: Po załadowaniu klas i zweryfikowaniu kodu interpreter odczytuje kod linia po linii.
  • Run-time: Run-time to system używany głównie do programowania opisz przedział czasu, w którym działa dany program.
  • Sprzęt: po skompilowaniu natywnego kodu Java działa on na określonej platformie sprzętowej.

W ten sposób program Java działa w środowisku JRE.

Jak działa JVM?

Funkcje JVM

Oto ważne komponenty JVM:

1) Moduł ładujący klasy

Moduł ładujący klasy jest podsystemem używanym do ładowanie plików klas. Pełni trzy główne funkcje, a mianowicie. Ładowanie, łączenie i inicjalizacja.

2) Obszar metod

Obszar metod JVM przechowuje strukturę klasy, taką jak metadane, kod metod języka Java i stałą pulę środowiska wykonawczego.

3) Sterta

Wszystkie obiekty, tablice i zmienne instancji są przechowywane w stercie. Ta pamięć jest współdzielona przez wiele wątków.

4) Stosy języków JVM

Stosy języka Java przechowują zmienne lokalne i ich częściowe wyniki. Każdy wątek ma swój własny stos języków JVM, tworzony współbieżnie podczas tworzenia wątku. Nowa ramka jest tworzona podczas wywoływania metody i jest usuwana po zakończeniu procesu wywołania metody.

5) Rejestry PC

Rejestry PC przechowują adres instrukcji maszyny wirtualnej Java, która jest aktualnie wykonywana. W Javie każdy wątek ma swój oddzielny rejestr PC.

6) Natywne stosy metod

Natywne stosy metod przechowują instrukcje kodu natywnego zależne od biblioteki natywnej. Alokuje pamięć na natywnych stertach lub używa dowolnego typu stosu.

7) Silnik wykonawczy

Jest to rodzaj oprogramowania używanego do testowania oprogramowania, sprzętu lub całych systemów. Silnik wykonywania testów nigdy nie zawiera żadnych informacji o testowanym produkcie.

8) Interfejs metod natywnych

Interfejs metod natywnych jest strukturą programistyczną. Umożliwia to kodowi Java działającemu w JVM na wywoływanie przez biblioteki i aplikacje natywne.

9) Biblioteki metod rodzimych

Biblioteki rodzime to zbiór bibliotek rodzimych (C, C ++), które są potrzebne silnikowi wykonawczemu.

Różnica między JDK, JRE i JVM

Oto główne różnice między JDK, JRE i JVM:

JDK JRE JVM
Pełna forma JDK to Java Development Kit. Pełna forma środowiska JRE to Java Runtime Environment. Pełna forma maszyny JVM to wirtualna maszyna języka Java.
JDK to zestaw programistyczny do tworzenia aplikacji w języku Java. Jest to pakiet oprogramowania, który dostarcza bibliotekom klas Java niezbędnych komponentów do uruchomienia kodu Java. JVM wykonuje kod bajtowy języka Java i zapewnia środowisko do jego wykonywania.
JDK jest zależny od platformy. JRE jest również zależne od platformy. JVM jest niezależna od platformy.
Zawiera narzędzia do tworzenia, debugowania i monitorowania kodu java. Zawiera biblioteki klas i inne pliki pomocnicze, których JVM wymaga do wykonania programu. Narzędzia programistyczne nie są zawarte w JVM.
Jest to nadzbiór JRE Jest to podzbiór JDK. JVM jest podzbiorem środowiska JRE.
JDK umożliwia programistom tworzenie programów Java, które mogą być uruchamiane i uruchamiane przez JRE i JVM. Środowisko JRE to część języka Java, która tworzy maszynę JVM. Jest to komponent platformy Java, który wykonuje kod źródłowy.
JDK jest dostarczany z instalatorem. JRE zawiera tylko środowisko do wykonywania kodu źródłowego. JVM dołączone zarówno do oprogramowania JDK, jak i JRE.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *