java components java platform
Овај водич даје детаљан опис Јаве као платформе и њених компонената, тј. ЈРЕ, ЈДК, Јава виртуелне машине и разлике између ЈРЕ и ЈДК:
Јава је описана као програмски језик као и платформа. У нашем уводном водичу већ смо говорили да је платформа софтверско окружење помоћу којег можемо извршавати програме или апликације.
У овом упутству ћемо разговарати о Јави, као платформи. Такође ћемо разговарати о компонентама Јава платформе и видети како оне функционишу.
=> Прочитајте серију Еаси Јава Траининг.
Шта ћете научити:
тражећи унапређење у узорку оцене
Јава платформа
Јава платформа је софтвер или збирка програма који нам помажу у извршавању апликација написаних на Јава програмском језику. Јава платформа се састоји од Јава компајлера, скупа библиотека и извршног механизма.
Јава платформа је независна од било ког одређеног ОС што Јава програмски језик чини језиком независним од платформе.
Јава платформа се састоји од следећих компоненти.
- Јава језик
- Јава развојни прибор (ЈДК)
- Јава Рунтиме Енвиронмент (ЈРЕ)
- Јава компајлер
- Јава виртуелна машина (ЈВМ)
Поред горе наведених главних компоненти, Јава платформа такође садржи сакупљаче смећа, скуп библиотека и друге додатне компоненте и алате који су потребни за ефикасно покретање Јава апликација.
Размотримо следећи дијаграм који приказује однос између свих ових компоненти.
Дакле, из горњег дијаграма можемо закључити да,
ЈРЕ = ЈВМ + часови библиотеке.
ЈДК = ЈРЕ + алати за програмере.
Пре него што преузмемо сваку од компоненти, хајде да прво разумемо ток извршавања Јава програма.
Следећи дијаграм приказује ток Јава програма.
Дакле, горњи дијаграм приказује једноставан ток извршавања Јава програма. Програм написан на језику Јава саставља Јава компајлер (јавац). За разлику од осталих језичких компајлера који генеришу машински код након компајлирања, Јавац преводилац генерише датотеку класе која се састоји од бајт кода.
Сада је ова датотека класе дата Јава Виртуал Мацхине (ЈВМ) која преводи датотеку класе у објектну датотеку која садржи машински зависан код. Тада овај код извршава машина.
како отворити торрент датотеку на Виндовсима
Размотримо детаљно сваку од ових компоненти.
Јава језик
Јава је програмски језик који Јава платформа користи. Јава је објектно оријентисани програмски језик чија синтакса је изведена из Ц, а ООПС функције изведене су из Ц ++. Има своју синтаксу, правила, формат и програмску парадигму.
У овој серији ћемо детаљно научити све главне концепте у Јави и програмирању.
Јава компајлер
Ово је компајлер за програмски језик Јава и његова функција је да генерише датотеке класе Јава из Јава изворног кода. Датотека класе Јава садржи Јава бајт код независан од платформе.
Након генерирања датотека класе, ЈВМ учитава ове датотеке класе и или интерпретира бајт код или га компајлира у машински код користећи Јуст-ин-тиме (ЈИТ) компајлер.
Јава виртуелна машина (ЈВМ)
ЈВМ је центар Јава програмског језика и Јава платформе. ЈВМ претвара бајт код у машински специфичан код (познат и као објектни код на другим језицима програмера).
ЈВМ пружа функционалност сакупљања смећа, управљање меморијом, безбедност итд. ЈВМ је неовисан о платформи и његову функцију можемо прилагодити помоћу виртуелног интерфејса који пружа, а који не зависи од машине и такође је неовисан о оперативном систему.
Ова независност ЈВМ-а од платформе омогућава нам да креирамо Јава програме на једној машини и извршимо их на другој машини (ВОРА - Врите - Онце - Рун - Анивхере).
Следећи дијаграм илуструје различите делове ЈВМ-а.
ЈВМ је присутан у РАМ меморији. Када Јава програм компајлер Јава програм претвори у датотеку класе, треба га извршити.
За извршење, учитавач класе доноси датотеку класе на Рам. Овде је БИТЕ код проверен за било какве безбедносне проблеме. Учитавач класа је такође одговоран за учитавање, повезивање и иницијализацију програма који треба извршити.
ЈВМ меморија приказана на горњем дијаграму садржи разне компоненте као што је приказано и помажу у извршавању програма држећи ПЦ регистре који садрже тренутне инструкције које треба извршити, Хеап који садржи променљиве, низове итд.
ЈВМ меморија такође садржи подручје методе и матични стек метода који садржи код методе и спецификацију матерњег језика. ЈВМ стек садржи инстанцу програма или тренутну нит. Ако постоји више нити, свака нит ће имати свој ЈВМ стек.
Једном када је програм правилно повезан, он се преноси на извршни механизам. Извршни механизам сарађује са матичним интерфејсом методе и матичним библиотекама метода. Интерфејс матичне методе је програмски оквир који омогућава Јава коду да позива библиотеке и матичне апликације које су део матичних библиотека метода.
Даље, извршни механизам претвара бајткод у изворни машински код користећи компајлер тачно у време (ЈИТ). Тада програм извршава машина.
Белешка: ЈИТ или Јуст-ин-тиме цомпилер је део Јава виртуелне машине (ЈВМ). Он истовремено тумачи део бајт кода који има сличну функционалност. Другим речима, претвара бајт код у изворни машински код на истом нивоу програмирања. То је разлог због којег се Јава компајлира као и интерпретирани језик.
Јава Рунтиме Енвиронмент (ЈРЕ)
ЈРЕ, као што и само име говори, је рунтиме окружење потребно за извршавање Јава програма и апликација. ЈРЕ се састоји од Јава виртуелне машине (ЈВМ) и бинарних датотека и других класа за успешно извршавање Јава програма.
ЈРЕ је подскуп ЈДК-а и не садржи никакве развојне алате као што су Јава компајлер, програм за отклањање грешака итд. Дакле, ако су ваше Јава апликације развијене негде другде, а потребно их је извршити само на вашем рачунару, онда ЈРЕ можете инсталирати одвојено. За ово морате инсталирати ЈДК.
На машини вам је потребан ЈРЕ, јер је минимални захтев за покретање Јава програма на вашем рачунару.
ЈРЕ укључује следеће компоненте.
- Библиотеке кодова, поставке својстава и датотеке ресурса : Ту спадају датотеке попут цхарсетс.јар, рт.јар итд.
- ДЛЛ датотеке : Користи их Јава хотспот клијент виртуелна машина и сервер виртуелна машина.
- Датотеке Јава екстензије : На пример, датотеке повезане са спецификацијом локализације као што је лоцаледата.јар
- Фајлови потребан за управљање безбедношћу. На пример, јава.политика, јава.сецурити
- Часови подршке аплету.
- Датотеке фонтова Труе Типе : Обично захтева платформа.
Да бисте извршили било коју апликацију / програм написан на Јави, потребан вам је ЈРЕ инсталиран на вашем систему. ЈРЕ зависи од платформе. То значи да треба да преузмете и инсталирате ЈРЕ који је компатибилан са вашим ОС-ом и архитектуром.
Јава развојни прибор (ЈДК)
Ово је суштинска компонента сваког Јава окружења. ЈДК садржи ЈРЕ (Јава Рунтиме Енвиронмент), заједно са Јава компајлером, Јава програмом за отклањање погрешака и осталим основним класама. ЈДК се користи за развој Јаве, јер пружа целокупну извршну датотеку и бинарне датотеке, као и алате потребне за компајлирање, отклањање грешака у Јава програму.
ЈДК је софтвер специфичан за платформу и стога ћемо имати засебне ЈДК инсталационе програме за сваки оперативни систем.
ЈДК садржи следеће компоненте:
- јЦонсоле : Ово је Јава конзола за надзор и управљање.
- тегла : Ово је архивар. Овај алат се користи за паковање сродних библиотека класа у једну Јар датотеку, као и за управљање Јар датотекама.
- јарСигнер : Овај алат се користи за потписивање и верификацију јар-а.
- јавап: Ово је алат за растављање датотека класе.
- јававс : Јава покретач веб покрета за ЈНЛП апликације.
- јхат : Алат за анализу гомиле Јава.
- јрунсцрипт : Љуска скрипте наредбеног ретка Јава.
- јстацк : Услужни програм који се користи за испис трагова стека за Јава нити.
- Јавадоц : Ово аутоматски генерише документацију из коментара изворног кода.
- апплетвиевер : Користи се за извршавање аплета и отклањање грешака без веб прегледача.
- погодан : Алат за обраду напомена.
- ектЦхецк : Услужни програм који се користи за проверу сукоба датотека јар.
- кеитоол : Помоћу овог услужног програма можете манипулисати продавницом кључева.
- полицитоол : Ово је алат за креирање политика и управљање њима.
- кјц : Ово је део АПИ-ја за КСМЛ везивање (ЈАКСБ) који прихвата КСМЛ шему и генерише Јава класе.
Тако можете видети да су компоненте ЈДК оне које су нам потребне са развојне тачке гледишта.
најбољи бесплатни видео конвертер за мац
Као што је приказано на горњем дијаграму, Јава компајлер који је део ЈДК изворни код Јава претвара у бајт кодове. Затим се овај бајт код прослеђује ЈВМ-у (овај поступак је већ горе описан), а одатле иде у ЈРЕ где се код извршава.
Пошто смо видели детаље о ЈДК и ЈРЕ, хајде сада да разговарамо о разликама између ЈРЕ и ЈДК.
ЈРЕ вс ЈДК
Немој | ЈРЕ | ЈДК |
---|---|---|
7 | Компајлирани / интерпретирани Јава програм узима као улаз и генерише излаз. | Саставио Јава изворни програм и генерише датотеку класе која се затим даје ЈВМ-у. |
1 | ЈРЕ је скраћеница од Јава Рунтиме Енвиронмент. | ЈДК је скраћеница од Јава Девелопмент Кит. |
два | Углавном се користи за извршавање Јава програма. | Програмери ЈДК користе за развој Јава програма. |
3 | Садржи Јава виртуелну машину (ЈВМ) која се налази у њој. | Нема ЈВМ. |
4 | ЈРЕ нема Јава компајлер, па не може да компајлира програме. | ЈДК има јавац компајлер и одговоран је за компајлирање програма. |
5 | Садржи библиотеку класе Јава, наредбу јава и другу инфраструктуру. | ЈДК садржи алате попут Јавадоц-а и архиватора који се користе за развој Јава апликација. |
6 | ЈРЕ се може инсталирати као самостални програм. | ЈДК је засебан инсталациони програм и испоручује се у пакету са ЈРЕ. |
Закључак
У овом упутству смо разговарали о детаљима Јава Девелопмент Кит-а (ЈДК) који долази у пакету са Јава Рунтиме Енвиронмент (ЈРЕ) и Јава компајлером. ЈРЕ заузврат садржи Јава виртуелну машину (ЈВМ) која је одговорна за претварање бајт кода генерисаног Јава компајлером у машински специфичан код.
Све ово, укључујући Јава језик, компоненте су надређеног ентитета који се назива Јава платформа, а то је окружење које нам помаже да покренемо Јава апликацију. Овде смо такође разговарали о детаљној архитектури и раду ЈВМ-а, као и о извршавању Јава програма.
=> Овде погледајте водич за почетнике Јава.
Препоручено читање
- Јава виртуелна машина: како ЈВМ помаже у покретању Јава апликације
- Водич за Јава СВИНГ: Контејнери, компоненте и руковање догађајима
- Примена Јава-а: Стварање и извршавање Јава ЈАР датотеке
- Приступити модификаторима у Јави - Водич са примерима
- Водич за Јава рефлексију са примерима
- Увод у програмски језик Јава - Видео водич
- Водич за ЈАВА за почетнике: 100+ практичних Јава видео водича
- ООП Јава: Увод у објектно оријентисано програмирање на Јави