Јава је објектно оријентисан и безбедан програмски језик високог нивоа опште намене који је развио Џејмс Гослинг из компаније Сун Мицросистемс, Инц. 1991. године. Званично је познат као ОАК. 1995. Сун Мицросистем је променио име у Јава. У 2009, Сун Мицросистем преузима Орацле Цорпоратион.
Издања Јава
Свако издање Јаве има различите могућности. Постоје три издања Јаве:
Јава стандардна издања (ЈСЕ): | Користи се за креирање програма за десктоп рачунар.
Јава Ентерприсе Едитион (ЈЕЕ): | Користи се за креирање великих програма који раде на серверу и управљају великим прометом и сложеним трансакцијама.
Јава Мицро Едитион (ЈМЕ): | Користи се за развој апликација за мале уређаје као што су сет-топ боксови, телефони и уређаји.
Врсте Јава апликација
Постоје четири типа Јава апликација које се могу креирати коришћењем Јава програмирања:
Самосталне апликације: | Јава самосталне апликације користе ГУИ компоненте као што су АВТ, Свинг и ЈаваФКС. Ове компоненте садрже дугмад, листу, мени, панел за померање итд. Познато је и као отуђење радне површине.
Ентерприсе апликације: | Апликација која се дистрибуира у природи назива се апликација за предузећа.
Веб апликације: | Апликације које раде на серверу називају се веб апликације. Користимо ЈСП, Сервлет, Спринг и Хибернате технологије за креирање веб апликација.
Мобилне апликације: | Јава МЕ је унакрсна платформа за развој мобилних апликација које раде на паметним телефонима. Јава је платформа за развој апликација у Андроиду.
Јава платформа
Јава платформа је колекција програма. Помаже да се развије и покрене програм написан у програмском језику Јава. Јава платформа укључује машину за извршавање, компајлер и скуп библиотека. Јава је језик независан од платформе.
Карактеристике Јаве
једноставно: | Јава је једноставан језик јер је његова синтакса једноставна, чиста и лака за разумевање. Сложени и двосмислени концепти Ц++-а су или елиминисани или поново имплементирани у Јави. На пример, преоптерећење показивача и оператора се не користи у Јави.
Објектно оријентисан: | У Јави је све у облику објекта. То значи да има неке податке и понашање. Програм мора имати најмање једну класу и објекат.
Робустан: | Јава се труди да провери грешку у време извођења и компајлирања. Користи снажан систем управљања меморијом који се зове сакупљач смећа. Функције руковања изузецима и сакупљања смећа чине га јаким.
безбедно: | Јава је сигуран програмски језик јер нема експлицитни показивач и програми се покрећу у виртуелној машини. Јава садржи менаџер безбедности који дефинише приступ Јава класама.
Независно од платформе: | Јава пружа гаранцију да се код пише једном и да се покреће било где. Овај бајт код је независан од платформе и може се покренути на било којој машини.
Преносив: | Јава бајт код се може пренети на било коју платформу. Нема карактеристика које зависе од имплементације. Све што се тиче складиштења је унапред дефинисано, на пример, величина примитивних типова података.
Високих перформанси: | Јава је интерпретирани језик. Јава омогућава високе перформансе уз коришћење компајлера Јуст-Ин-Тиме.
Дистрибуирано: | Јава такође има могућност умрежавања. Дизајниран је за дистрибуирано окружење интернета јер подржава ТЦП/ИП протокол. Може се покренути преко интернета. ЕЈБ и РМИ се користе за креирање дистрибуираног система.
Вишенитни: | Јава такође подржава мулти-тхреадинг. То значи радити више од једног посла истовремено.
ООП (објектно оријентисани систем програмирања)
Објектно оријентисано програмирање је начин решавања сложених проблема тако што се они разбију на мали подпроблем. Објекат је ентитет из стварног света. Лакше је развити програм коришћењем објекта. У ООП-има креирамо програме користећи класу и објекат на структуриран начин.
Класа: Класа је шаблон или нацрт или прототип који дефинише чланове података и методе објекта. Објекат је инстанца класе. Класу можемо дефинисати користећи кључну реч цласс.
Објекат: Објекат је ентитет из стварног света који се може јасно идентификовати. На пример, радни сто, круг се могу сматрати објектима. Објект има јединствено понашање, идентитет и стање. Поља података са својим тренутним вредностима представљају стање објекта (познато и као његова својства или атрибути).
Одвајање: Апстракција је метод скривања небитних информација од корисника. На пример, возач зна само да вози аутомобил; нема потребе да знате како аутомобил ради. Можемо направити апстракт класе користећи кључну реч апстракт. У Јави користимо апстрактну класу и интерфејс за постизање апстракције.
Енкапсулација: Енкапсулација је процес повезивања података и функција у једну целину. Класа је пример енкапсулације. У Јави, Јава беан је потпуно инкапсулирана класа.
наследство: Наслеђивање је механизам у коме једна класа стиче све карактеристике друге класе. Можемо постићи наслеђивање коришћењем кључне речи ектендс. Олакшава поновну употребу кода.
полиморфизам: Полиморфизам је способност појављивања у многим облицима. Другим речима, појединачна акција на различите начине. На пример, дечак у учионици се понаша као ученик, у кући се понаша као син. Постоје два типа полиморфизма: полиморфизам у времену извођења и полиморфизам у времену компајлирања.