java components java platform
Този урок дава подробно описание на Java като платформа и нейните компоненти, т.е. JRE, JDK, Java виртуална машина и разлика между JRE срещу JDK:
въпроси и отговори за интервю за тестване на изпълнението
Java е описана като език за програмиране, както и като платформа. В нашия уводен урок вече обсъдихме, че платформата е софтуерна среда, използваща която можем да изпълняваме програми или приложения.
В този урок ще обсъдим Java като платформа. Също така ще обсъдим компонентите на платформата Java и ще видим как работят.
=> Прочетете серията Easy Training Training.
Какво ще научите:
Java платформа
Платформата Java е софтуер или колекция от програми, които ни помагат да изпълняваме приложения, написани на програмен език Java. Платформата на Java се състои от компилатор на Java, набор от библиотеки и механизъм за изпълнение.
Платформата Java е независима от която и да е конкретна операционна система, което прави езика за програмиране Java независим от платформата език.
Платформата Java се състои от следните компоненти.
- Java език
- Комплектът за разработка на Java (JDK)
- Средата за изпълнение на Java (JRE)
- Компилаторът на Java
- Виртуалната машина Java (JVM)
Освен горепосочените основни компоненти, платформата Java съдържа също събирачи на боклук, набор от библиотеки и други допълнителни компоненти и инструменти, необходими за ефективното стартиране на приложенията на Java.
Нека разгледаме следната диаграма, която изобразява връзката между всички тези компоненти.
От горната диаграма можем да заключим, че
JRE = JVM + библиотечни класове.
JDK = JRE + Инструменти за разработчици.
Преди да се заемем с всеки от компонентите, нека първо разберем потока на изпълнение на изпълнението на Java програма.
Следващата диаграма показва потока на Java програма.
Така че горната диаграма показва прост поток на изпълнение за Java програма. Програма, написана на Java език, се компилира от Java компилатора (javac). За разлика от други езикови компилатори, които генерират машинен код след компилация, компилаторът на Javac генерира файл с клас, състоящ се от байт код.
Сега този файл на класа се дава на Java Virtual Machine (JVM), който превежда файла на класа в обектен файл, съдържащ машинно зависим код. Тогава този код се изпълнява от машината.
Нека обсъдим всеки от тези компоненти в детайли.
Java език
Java е език за програмиране, който Java платформата използва. Java е обектно-ориентиран език за програмиране, чийто синтаксис се извлича от C, а функциите на OOPS се извличат от C ++. Той има своя синтаксис, правила, формат и парадигма за програмиране.
В тази поредица ще научим подробно всички основни концепции в Java и програмиране.
Компилаторът на Java
Това е компилатор за програмен език Java и неговата функция е да генерира файлове от Java клас от изходния код на Java. Java клас файлът съдържа независим от платформата Java байт код.
След генериране на файлове с класове, JVM зарежда тези файлове с класове и или интерпретира байтовия код, или го компилира в машинен код, използвайки компилатора Just-in-time (JIT).
Виртуалната машина Java (JVM)
JVM е центърът на езика за програмиране Java и платформата Java. JVM преобразува байтовия код в специфичен за машината код (известен също като обектен код на други езици на програмиста).
JVM предоставя функционалността на събирането на боклука, управлението на паметта, сигурността и др. JVM е независима от платформата и ние можем да персонализираме нейната функционалност, като използваме виртуален интерфейс, който не зависи от машината и е независим от операционната система.
Тази независима от платформата на JVM ни позволява да създаваме Java програми на една машина и да ги изпълняваме на друга машина (WORA - Write - Once - Run - Anywhere).
Следващата диаграма илюстрира различните части на JVM.
JVM присъства в RAM. Когато програмата Java се преобразува в файл от клас от компилатора на Java, тя трябва да бъде изпълнена.
За изпълнение файлът на класа се носи на Ram от зареждащия клас. Тук кодът BYTE се проверява за проблеми със сигурността. Classloader е отговорен и за зареждането, свързването и инициализирането на програмата, която трябва да бъде изпълнена.
шлюзът по подразбиране не е наличен windows 7
JVM паметта, показана на диаграмата по-горе, съдържа различни компоненти, както е показано и те помагат при изпълнението на програмата, като държат PC регистри, които съдържат текуща инструкция за изпълнение, Heap, която съдържа променливи, масиви и т.н.
JVM паметта също така съдържа област на метод и собствен стек от методи, който съдържа съответно кода на метода и родния език. JVM стекът съдържа екземпляра на програмата или текущата нишка. Ако има повече от една нишка, всяка нишка ще има своя JVM стек.
След като програмата е правилно свързана, тя се предава на двигателя за изпълнение. Изпълнителният механизъм си сътрудничи с родния интерфейс на метода и нативните библиотеки на методи. Интерфейсът на родния метод е програма за програмиране, която позволява на Java кода да извиква библиотеки и собствени приложения, които са част от библиотеките на родния метод.
След това механизмът за изпълнение преобразува Bytecode в Native машинен код, използвайки компилатор just-in-time (JIT). Тогава програмата се изпълнява от машината.
Забележка: JIT или Just-in-time compiler е част от Java Virtual Machine (JVM). Той интерпретира част от байт кода, която има подобна функционалност едновременно. С други думи, той преобразува байтовия код в собствен машинен код на същото ниво на програмиране. Това е причината, поради която Java се компилира, както и интерпретиран език.
Средата за изпълнение на Java (JRE)
Както подсказва името, JRE е средата за изпълнение, която е необходима за изпълнение на Java програми и приложения. JRE се състои от Java Virtual Machine (JVM) и двоични файлове и други класове за успешно изпълнение на Java програми.
JRE е подмножество на JDK и не съдържа никакви инструменти за разработка като Java компилатор, дебъгер и др. Следователно, ако вашите Java приложения са разработени другаде и трябва да ги изпълнявате само на вашата машина, тогава можете да инсталирате JRE отделно. Трябва да инсталирате JDK за това.
Нуждаете се от JRE, инсталиран на вашата машина, тъй като това е минималното изискване за стартиране на Java програми на вашето устройство.
JRE включва следните компоненти.
- Библиотеки с кодове, настройки на свойства и файлове с ресурси : Те включват файлове като charsets.jar, rt.jar и др.
- DLL файлове : Използва се от виртуална машина за клиент на Java hotspot и виртуална машина на сървър.
- Java разширение файлове : Например, файлове, свързани със спецификацията на локала като localedata.jar
- Файлове необходими за управление на сигурността. Например, java.policy, java.security
- Класове за поддръжка на аплети.
- Файлове с шрифт True Type : Обикновено се изисква от платформата.
За да изпълните всяко приложение / програма, написана на Java, трябва да имате JRE, инсталиран на вашата система. JRE зависи от платформата. Това означава, че трябва да изтеглите и инсталирате JRE, който е съвместим с вашата O.S и архитектура.
Комплектът за разработка на Java (JDK)
Това е основният компонент на всяка Java среда. JDK съдържа JRE (Java Runtime Environment) заедно с Java компилатор, Java дебъгер и други основни класове. JDK се използва за разработка на Java, тъй като предоставя целия изпълним файл и двоични файлове, както и инструменти, необходими за компилиране, отстраняване на грешки в Java програма.
JDK е специфичен за платформата софтуер и по този начин ще имаме отделни инсталатори на JDK за всяка операционна система.
JDK съдържа следните компоненти:
- jConsole : Това е конзола за наблюдение и управление на Java.
- буркан : Това е архиваторът. Този инструмент се използва за пакетиране на свързани библиотеки с класове в един Jar файл, както и за управление на Jar файлове.
- jarSigner : Този инструмент се използва за подписване и проверка на jar.
- javap: Това е инструмент за разглобяване на файлове от клас.
- челюсти : Java за стартиране на уеб за JNLP приложения.
- jhat : Инструмент за анализ на купчина Java.
- jrunscript : Обвивка на скрипт на командния ред на Java
- jstack : Помощна програма, използвана за отпечатване на следи от стекове за нишки Java.
- Javadoc : Това автоматично генерира документация от коментарите на изходния код.
- appletviewer : Използва се за изпълнение на аплет и отстраняване на грешки без уеб браузър.
- подходящ : Инструмент за обработка на анотации.
- extCheck : Помощна програма, използвана за проверка на конфликти на jar файлове.
- ключов инструмент : С помощта на тази помощна програма можете да манипулирате Keystore.
- policytool : Това е инструмент за създаване и управление на политики.
- xjc : Това е част от приложния програмен интерфейс (API) на XML (JAXB), който приема XML схема и генерира Java класове.
По този начин можете да видите, че компонентите на JDK са тези, които се изискват от нас от гледна точка на развитието.
най-добрият безплатен видео конвертор за
Както е показано в горната диаграма, изходният код на Java се преобразува в байт кодове от Java компилатор, който е част от JDK. След това този байтов код се предава на JVM (този процес вече е описан по-горе) и оттам отива в JRE, където се изпълнява кодът.
След като видяхме подробностите за JDK и JRE, нека сега обсъдим разликите между JRE и JDK.
JRE срещу JDK
Недей | JRE | JDK |
---|---|---|
7 | Взема компилираната / интерпретираната програма Java като вход и генерира изход. | Компилирана изходна програма Java и генерира файл с клас, който след това се дава на JVM. |
1 | JRE означава Java Runtime Environment. | JDK означава Java Development Kit. |
две | Използва се предимно за изпълнение на Java програми. | JDK се използва от разработчиците за разработване на Java програми. |
3 | Съдържа Java Virtual machine (JVM), вградена в нея. | Няма JVM. |
4 | JRE няма Java компилатор, така че не може да компилира програми. | JDK има javac компилатор и отговаря за компилирането на програми. |
5 | Съдържа библиотека на класа на Java, командата на java и друга инфраструктура. | JDK съдържа инструменти като Javadoc и архиватор, които се използват за разработване на Java приложения. |
6 | JRE може да се инсталира като самостоятелна програма. | JDK е отделен инсталатор и се доставя в комплект с JRE. |
Заключение
В този урок обсъдихме подробностите за Java Development Kit (JDK), който се доставя в комплект с Java Runtime Environment (JRE) и Java компилатор. JRE от своя страна съдържа Java Virtual Machine (JVM), която отговаря за преобразуването на байтов код, генериран от Java компилатора, в специфичен за машината код.
Всичко това, включително езикът Java, са компоненти на родителски обект, наречен Java платформа, която е среда, която ни помага да стартираме Java приложение. Тук също обсъдихме подробната архитектура и работата на JVM, както и изпълнението на Java програма.
=> Погледнете тук ръководството за начинаещи Java.
Препоръчително четене
- Java виртуална машина: Как JVM помага при стартирането на Java приложение
- Java SWING Урок: Контейнер, компоненти и обработка на събития
- Разполагане на Java: Създаване и изпълнение на Java JAR файл
- Модификатори на достъп в Java - Урок с примери
- Урок за отражение на Java с примери
- Въведение в езика за програмиране на Java - видео урок
- Урок за JAVA за начинаещи: 100+ практически ръководства за Java видео
- OOP Java: Въведение в обектно-ориентираното програмиране в Java