b'\n_START_ARTICLE_\nJava (kalba)\n_START_PARAGRAPH_\nJava\xc2\xa0\xe2\x80\x93 bendrosios paskirties, objekti\xc5\xa1kai orientuota programavimo kalba, kuri\xc4\x85 1991\xc2\xa0m. sukur\xc4\x97 D\xc5\xbeeimsas Goslingas ir kiti \xe2\x80\x9eSun Microsystems\xe2\x80\x9c in\xc5\xbeinieriai, o 2010\xc2\xa0m. j\xc4\x85 \xc4\xafsigijo Oracle korporacija._NEWLINE_Apie Jav\xc4\x85 oficialiai paskelbta 1995 met\xc5\xb3 gegu\xc5\xbe\xc4\x97s 23 d., o i\xc5\xa1leista t\xc5\xb3 pa\xc4\x8di\xc5\xb3 met\xc5\xb3 lapkrit\xc4\xaf. Java (prad\xc5\xbeioje vadinta Oak) kalbos pirminis tikslas buvo pakeisti C++ kalb\xc4\x85._NEWLINE_Javos aplikacijos yra kompiliuojamos \xc4\xaf baitkod\xc4\x85, kuris gali b\xc5\xabti paleid\xc5\xbeiamas bet kokioje Javos virtualiojoje ma\xc5\xa1inoje (JVM), nepriklausomai nuo kompiuterio architekt\xc5\xabros._NEWLINE_2015\xc2\xa0m. Java yra viena i\xc5\xa1 populiariausi\xc5\xb3 naudojam\xc5\xb3 programavimo kalb\xc5\xb3, ypa\xc4\x8d kliento-serverio \xe2\x80\x9eweb aplikacijose\xe2\x80\x9c. Ja taip pat ra\xc5\xa1omos programos Android i\xc5\xa1maniesiems telefonams.\n_START_SECTION_\nPavyzdys\n_START_PARAGRAPH_\nJava kalba para\xc5\xa1ytos programos, \xc4\xaf ekran\xc4\x85 i\xc5\xa1vedan\xc4\x8dios tekst\xc4\x85 \xe2\x80\x9eSveikas, pasauli!\xe2\x80\x9c, pavyzdys:_NEWLINE_public class SveikasPasauli {_NEWLINE__NEWLINE_public static void main(String[] args) {_NEWLINE_System.out.println("Sveikas, pasauli!");_NEWLINE_}}\n_START_SECTION_\nKalbos ypatyb\xc4\x97s\n_START_PARAGRAPH_\nJava programavimo sistemoje programuotojo para\xc5\xa1ytas kodas kompiliuojamas ne \xc4\xaf procesoriui specifin\xc4\x99, o \xc4\xaf tarpin\xc4\x99 form\xc4\x85. \xc5\xa0i tarpin\xc4\x97 forma nepriklauso nuo procesoriaus tipo ar operacin\xc4\x97s sistemos, tod\xc4\x97l i\xc5\xa1kart tinka vykdyti \xc4\xafvairiose aplinkose. Pirmosiose java versijose tarpinis kodas buvo interpretuojamas, tod\xc4\x97l Java peln\xc4\x97 l\xc4\x97tai dirban\xc4\x8dios platformos reputacij\xc4\x85. Dabartin\xc4\x97s sistemos tarpin\xc4\xaf kod\xc4\x85 paprastai prie\xc5\xa1 vykdydamos kompiliuoja (just in time compiling), tod\xc4\x97l vykdymo greitis pana\xc5\xa1us ar tik ne\xc5\xbeymiai ma\xc5\xbeesnis. Java turi \xe2\x80\x9enatyvi\xc4\x85 s\xc4\x85s\xc4\x85j\xc4\x85\xe2\x80\x9c, kurios pagalba nesunku j\xc4\x85 jungti ir su esan\xc4\x8diomis C, C++ ar FORTRAN bibliotekomis. Da\xc5\xbeniausiai to prireikia jei b\xc5\xabtina naudoti \xc5\xa1iomis kalbomis para\xc5\xa1ytas matematines ar kitokias bibliotekas._NEWLINE_Masyvo r\xc4\x97\xc5\xbei\xc5\xb3 tikrinimas java programuotojams padeda i\xc5\xa1vengti sunkiai aptinkam\xc5\xb3 programavimo klaid\xc5\xb3, sukelian\xc4\x8di\xc5\xb3 atid\xc4\x97t\xc4\x85 katastrof\xc4\x85._NEWLINE_Svarbi Java sistemos dalis yra \xc5\xa1iuk\xc5\xa1li\xc5\xb3 surinktuvas. C ar C++ programuotojas turi ra\xc5\xa1yti kod\xc4\x85, kuris at\xc4\x97jus laikui \xe2\x80\x9enaikina\xe2\x80\x9c nebereikalingas duomen\xc5\xb3 strukt\xc5\xabras, i\xc5\xa1laisvindamas j\xc5\xb3 u\xc5\xbeimam\xc4\x85 atmint\xc4\xaf. Klaidos neretai \xe2\x80\x9epakabindavo\xe2\x80\x9c program\xc4\x85, o senesniais laikais paprastai ir vis\xc4\x85 operacin\xc4\x99 sistem\xc4\x85. Java \xc5\xa1iuk\xc5\xa1li\xc5\xb3 surink\xc4\x97jas pats nustato, jog strukt\xc5\xabra nebenaudojama ir jos u\xc5\xbeimama atmintis gali b\xc5\xabti panaudota kam kitam._NEWLINE_\xc4\xaevairios Java programos dalys nesunkiai gali b\xc5\xabti vykdomos lygiagre\xc4\x8diai (multithreading)._NEWLINE_Java taip pat turi gerai i\xc5\xa1vystyt\xc4\x85 refleksijos sistem\xc4\x85._NEWLINE_Pradedant naujesne 1.5 versija, java kalba taip pat palaiko \xe2\x80\x9ebendrybes\xe2\x80\x9c (angl. generics), kurios primena ai\xc5\xa1kesn\xc4\xaf, paprastesn\xc4\xaf praeityje kai kuriose kalbose buvusi\xc5\xb3 makrokomand\xc5\xb3 variant\xc4\x85. Nuo 1.6 versijos java palaiko skriptus\xc2\xa0\xe2\x80\x93 galimyb\xc4\x99 vykdyti simboli\xc5\xb3 eilut\xc4\x97s kintamajame esant\xc4\xaf kitos programos tekst\xc4\x85, jam kei\xc4\x8diantis duomenimis su gaubian\xc4\x8di\xc4\x85ja programa._NEWLINE_\xc5\xa0iuo metu esama tiek komercini\xc5\xb3, tiek ir atviro kodo (GNU Classpath, Apache Harmony) Java program\xc5\xb3 vykdymo sistem\xc5\xb3. Java suk\xc5\xabrusi Sun microsystems 2006\xc2\xa0m lapkri\xc4\x8dio m\xc4\x97nes\xc4\xaf paskelb\xc4\x97, jog per kelet\xc4\x85 met\xc5\xb3 palaipsniui pereina prie atviro kodo modelio, pateikiant visas java programai vykdyti reikalingas dalis su GPL licencija, papildyta sujungimo i\xc5\xa1imtimi.\n_START_SECTION_\nGoogle\n_START_PARAGRAPH_\nGoogle ir Android, Inc. pasirinko Java kalb\xc4\x85 kuriant Android operacin\xc4\x99 sistem\xc4\x85. Nors ir Android, veikianti Linux kernel pagrindu, para\xc5\xa1yta C kalba, Android SDK naudoja Java kaip Android aplikacij\xc5\xb3 pamat\xc4\x85. Ta\xc4\x8diau tik sintaksei, o ne klasi\xc5\xb3 bibliotekoms.'