
| Тази статия се нуждае от вниманието на редактор с по-задълбочени познания. Моля, помогнете да се намери такъв редактор или подобрете тази страница, ако можете. |
| Парадигма: | обектно ориентиран |
|---|---|
| Излиза през: | 1990 те |
| Разработен от: | en:Sun Microsystems |
| Система типове: | строга, статична |
| Главни реализации: | много |
| Диалекти: | няма |
| Повлиян от: | Objective-C, C++, Smalltalk |
| Повлиял: | C# |
| Сайт: | http://java.sun.com/ |
Java или Джава е обектно-ориентиран език за програмиране. Кодът, написан на Java не се компилира до машинен код за определен процесор, а до специфичен за езика код, наречен байт код. Поради това за изпълнението на програма, написана на Java е необходима т. нар. Виртуална машина (на английски: Java Virtual Machine).
Подобна реализация има своите предимства и недостатъци. Сред главните предимства са:
Главен недостатък е необходимостта от допълнителни ресурси (под формата на процесорно време и памет) за изпълнението на самата виртуална машина.
Съществуват и компилатори, които превеждат байт кода до машинен код. Недостатъка при използването им е, че тогава програмата не може да се стартира на различни платформи.
Ранните версии на виртуалните машини страдат от слаба производителност поради необходимостта от компилиране на байт кода до машинен код. Този проблем е решен в значителна степен след въвеждането на JIT компилатора във виртуалната машина.
Съдържание |
Java е обектно-ориентиран и основна концепция са класовете, които се дефират свойствата (атрибутите) и поведението (методите) на обектите. Няма глобални променливи и функции - всчко се дефинира в класове. Липсва и множественото наследяване от C++ в някаква степен заместени от интерфейсите. Пример за противното е C++. Синтаксисът на Java е сходен до този на C++ и преминаването от C++ към Java е лесно.
Java се разработва в няколко направления:
Към настоящият момент са известни следните версии на езика:
Първоначалната версия на езика, наричана още Oak, е разработвана в продължение на 18 месеца — от пролетта на 1991 до лятото на 1992 — от Патрик Нотън (Patrick Naughton), Майк Шеридан (Mike Sheridan) и Джеймс Гослинг (James Gosling), както и от още десет разработчика. Поръчката е била на компютърния производител Sun Microsystems. Проектът е носил името „The Green Project“ (Зеленият проект). Един от основните разработчици е Джеймс Гослинг, който се смята и за един от бащите на езика. Истинския пробив започва с версиите 1.3 и 1.4 през 1998. Днес Java е много широко разпространена в сървърните приложения.
В този пример на конзолен екран се извежда текстът „Здравей, свят!“:
public class HelloWorld { public static void main(String[] args) { System.out.println("Здравей, свят!"); } }
Забележка: Частите от програмата са оцветени различно, за да се подчертае принадлежността им по смисъл от гледна точка на езика Java. Повечето съвременни редактори на програми поддържат подобно оцветяване.
| Тип | Описание | Брой битове | Стойности |
|---|---|---|---|
| boolean | Логическа стойност | 1 | true, false |
| byte | Цяло число | 8 | -128 до 127 |
| char | Цяло (неотрицателно) число или знак | 16 | 0 до 65535 или \u0000 до \uffff |
| short | Цяло число | 16 | - 32768 до 32767 |
| int | Цяло число | 32 | - 2147483648 до 2147483647 |
| long | Цяло число | 64 | - 9223372036854775808 до
9223372036854775807 |
| float | Дробно число | 32 | ± 1,40239846x10−45 до
±3,40282347x10+38 |
| double | Дробно число | 64 | ±4,94065645841246544x 10−324 до
±1,79769313486231570x10+308 |
На ниво виртуална машина типовете float и double са представени според нормата IEEE 754.
Следните думи не могат да се използват в имената на функции или променливи:
abstract do if package synchronized boolean double implements private this break else import protected throw byte extends instanceof public throws case false int return transient catch final interface short true char finally long static try class float native strictfp void const for new super volatile continue goto null switch while default
// ... - коментари до края на реда
/* ... */ - Блок-коментар
/** ... */ - Java-Doc коментар
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History