Java (програмски језик) — разлика између измена

Садржај обрисан Садржај додат
м fix homoglyphs: convert Cyrillic characters in [Ма]nager to Latin
Autobot (разговор | доприноси)
м Разне исправке; козметичке измене
Ред 33:
* робустан - Јава је намењена за писање програма који морају бити поуздани на много начина. Истиче се у раној провери могућих проблема, каснијој динамичкој провери(током извршавања) и елиминацији ситуација у којима лако долази до појаве грешака
* безбедан - Јава је намењена коришћењу у мрежним/дистрибуираним окружењима. Према томе, много је труда уложено у безбедност. Омогућава конструкцију система који су заштићени од [[Рачунарски вирус|вируса]] и злонамерне модификације. Од самог почетка, Јава је пројектована да потпуно онемогући одређене врсте напада, као што су прекорачење [[Позивни стек|извршног стека]], приступ меморији изван дела додељеног процесу, читање или уписивање [[Datoteka|датотека]] без дозволе...
* неутралан - компајлер ствара објектну датотеку, чији је формат независан од оперативног система на коме се покреће. Компајлирани код се може извршавати на многим процесорима, под претпоставком присуства извршног система Јава. Јава компајлер остварује ово тако што генерише тзв. [[бајткод]] инструкције, које немају никакве везе са архитектуром коришћеног рачунара, већ се подједнако лако интерпретирају на свакој машини, а исто тако лако се преводе и у одговарајући [[Mašinski jezik|машински код]]
* преносив - овде не постоје аспекти који су зависни од [[Имплементација програмског језика|имплементације]]. Величине примитивних типова су фиксне, као и њихово понашање у [[Аритметика|аритметици]]. Такође, библиотеке које су део система дефинишу интерфејсе који су преносиви
* интерпретиран - исти Јава бајткод се може извршавати на сваком компјутеру за који постоји Јава [[Интерпретатор(рачунарство)|интерпретер]]. Будући да је линковање постепен и лакши поступак, сам развој може бити бржи
Ред 63:
Јава се извршава коришћењем [[Јава виртуелна машина|Јава виртуелне машине]] -ЈVМ ({{јез-енгл|[[Јаva Virtual Machine]]}}) <ref>[http://www.programmerinterview.com/index.php/java-questions/jvm-platform-dependent/ "Јава Виртуелна Машина"]</ref> - језгро Јаве, апстрактна машина која постоји само у [[Рачунарска меморија|меморији]].
 
Јава је језик који се преводи и интерпретира. Јава изворни код (*.java [[фајл]]) након компајлирања, [[компилатор|компајлером]] [[javac]], се преводи у изворни код тзв. [[бајткод]] (*.class фајл). Формирани бајткод је исти за све [[Архитектура рачунара|архитектуре рачунара]] и представља инструкције за Јава виртуелну машину.
Бајткод у Јава виртуелној машини, јава [[интерпретатор (рачунарство)|интерпретатором]] - јаva, се дешифрује и интерпретира у извршни код, погодан за извршавање на рачунару, одговарајућем [[хардвер]]у.
 
Ред 215:
Чињеница да променљива објекта може да показује на више стварних типова назива се [[Полиморфизам (рачунарство)|полиморфизам]].
 
Променљива типа Еmployee може да се односи на објекат типа Еmployee, или на објекат било које поткласе класе Еmployee, као што су Manager, Еxecutive...
 
У случају да желимо да спречимо да неко други формира поткласу од неке наше класе, у дефиницији такве класе користимо модификатор ''-{final}-''. Слично, коришћењем истог модификатора можемо да учинимо неку конкретну методу у класи коначном. Модификатор ''-{final}-'' користимо како бисмо осигурали да се понашање не може променити у поткласи.
Ред 265:
 
=== Упутства за почетнике ===
* {{Cite book|ref= harv|last=Flanagan|first=David|title = Java in a Nutshell|edition=3rd|publisher=O'Reilly & Associates|year=1999|isbn=978-1-56592-487-1|pages=}}
* [http://www.bruceeckel.com/ ''-{Thinking in Java}-''], од Бруса Екела
* [http://www.vias.org/javacourse/ ''-{Java Course}-''] Позната књига А. Б. Даунија као е-књига базирана на -{HTMLHelp}-
Ред 278:
* [http://ei.cs.vt.edu/~history/Youmans.Java.html -{Java: Cornerstone of the Global Network Enterprise}-]
* [http://www.javarss.com/ -{JavaRSS.com}- - -{Java}- портал вебсајтова рађених у -{Java}- језику, богат вестима, чланцима, блоговима, групама, форумима везаним за -{Java}- језик и -{J2EE}- платформу]
* {{Cite book|ref= harv|last=Horstmann|first=Cay S.|title = Core Java Volume I-Fundamentals|edition=9th|publisher=Prentice Hall|year=2013|isbn=978-86-7991-367-8|pages=}}
* {{Cite book|ref= harv|last=Horton|first=Ivor|title = Ivor Horton's Beginning Java 2 JDK|edition=5th|publisher=Wiley Publishing|year=2005|id=ISBN 86-7991-299-9|pages=}}
* [http://files.bruckner.cz/be2a5b2104bf393da7092a4200903cc0/PecinovskyOOP.pdf Rudolf Pecinovsky, OOP – Learn Object Oriented Thinking and Programming]
* [http://cet.rs/wp-content/uploads/2017/06/Java_2_JDK_5_Pog_01_Od_pocetka.pdf Ivor Horton, Java 2 JDK 5]
* Ivor Horton's Beginning Java 2: JDK 5 Edition, CET, Београд
* C. Horstmann and G. Cornell: Core JAVA, Volume I Fundamentals, Sun Microsystems, Inc. 2005
* M. Ивановић, З. Будимац, М. Радовановић, Д. Митровић: Објектно-оријентисано програмирање и програмски језик Јава, Нови Сад,2016.
* [http://chimera.labs.oreilly.com/books/1234000001805/index.html Learning Java, 4th Edition by Patrick Niemeyer and Daniel Leuck]