Java
- Русское название:
- Ява (джава, жарг. жаба)
- Дата создания:
- 1995
- Создан под влиянием:
- Повлиял на:
- Парадигма:
- Типизация:
- Принятые расширения файлов:
- .java — исходные тексты; .class — скомпилированные файлы (классы); .jar — архив (формат zip) с исходниками/скомпилированными файлами; .war — (Web Archive, zip), то же, что jar, но для web-приложений (сервлетов); .ear — (Enterprise Archive, формат zip)
- Реализации и версии (свернуть все | развернуть все):
Java — объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Изначально новый язык программирования назывался Oak (James Gosling) и разрабатывался для бытовой электроники, но впоследствии был переименован в Java и стал использоваться для написания апплетов, приложений и серверного программного обеспечения.
Программы на Java могут быть транслированы в байт-код, выполняемый на виртуальной java-машине (JVM) — программе, обрабатывающей байт-код и передающей инструкции оборудованию, как интерпретатор, но с тем отличием, что байт-код, в отличие от текста, обрабатывается значительно быстрее.
Язык Java зародился как часть проекта создания передового программного обеспечения для различных бытовых приборов. Реализация проекта была начата на языке C++, но вскоре возник ряд проблем, наилучшим средством борьбы с которыми было изменение самого инструмента — языка программирования. Стало очевидным, что необходим платформо-независимый язык программирования, позволяющий создавать программы, которые не приходилось бы компилировать отдельно для каждой архитектуры и можно было бы использовать на различных процессорах под различными операционными системами.
Язык Java потребовался для создания интерактивных продуктов для сети Internet. Фактически, большинство архитектурных решений, принятых при создании Java, было продиктовано желанием предоставить синтаксис, сходный с C и C++. В Java используются практически идентичные соглашения для объявления переменных, передачи параметров, операторов и для управления потоком выполнением кода. В Java добавлены все хорошие черты C++.
Три ключевых элемента объединились в технологии языка Java
- Java предоставляет для широкого использования свои апплеты (applets) — небольшие, надежные, динамичные, не зависящие от платформы активные сетевые приложения, встраиваемые в страницы Web. Апплеты Java могут настраиваться и распространяться потребителям с такой же легкостью, как любые документы HTML
- Java высвобождает мощь объектно-ориентированной разработки приложений, сочетая простой и знакомый синтаксис с надежной и удобной в работе средой разработки. Это позволяет широкому кругу программистов быстро создавать новые программы и новые апплеты
- Java предоставляет программисту богатый набор классов объектов для ясного абстрагирования многих системных функций, используемых при работе с окнами, сетью и для ввода-вывода. Ключевая черта этих классов заключается в том, что они обеспечивают создание независимых от используемой платформы абстракций для широкого спектра системных интерфейсов
Элементы синтаксиса:
| Комментарий до конца строки | // |
|---|---|
| Комментарии, которые не могут быть вложенными | /* ... */ |
| Регистрозависимость | да |
| Регулярное выражение идентификатора переменной | [_a-zA-Z$][_a-zA-Z0-9$]* |
| Присваивание значения переменной | = |
| Объявление переменной | type variable |
| Объявление переменной с присваиванием значения | type variable = value |
| Группировка выражений | ( ... ) |
| Блок | { ... } |
| Равенство | == |
| Неравенство | != |
| Сравнение | < > <= >= |
| Вызов функции | f(a, b, ...) |
| Вызов функции без параметров | f() |
| Последовательность | ; |
| Если - то | if (condition) ... |
| Если - то - иначе | if (condition) ... else ... или condition ? ... : ... |
| Бесконечный цикл | while (true) ... |
| Цикл с предусловием | while (condition) ... |
| Цикл с постусловием | do ... while (!condition) |
| Цикл for - next для диапазона целых чисел с инкрементом на 1 | for (int i = 1; i <= 10; i++) ... |
| Цикл for - next для диапазона целых чисел с декрементом на 1 | for (int i = 10; i > 0; i--) ... |
Примеры:
Hello, World!:
Пример для версий Sun Java 6Приведенный код должен находиться в файле HelloWorld.java.
public class HelloWorld {
public static void main(String[] args)
{
System.out.println("Hello, World!");
}
}
Факториал:
Пример для версий Sun Java 6Используется рекурсивное определение факториала. Для хранения больших чисел использован элементарный тип данных long, позволяющий хранить числа от -263 до 263-1.
public class Factorial {
static long factorial(int n)
{
return ( n==0 ? 1 : n*factorial(n-1) );
}
public static void main(String[] args)
{
for (int n=0; n<=16; n++)
System.out.println(n+"! = "+factorial(n));
}
}
Факториал:
Пример для версий Sun Java 6Используется итеративное вычисление факториала. Для хранения больших чисел используется встроенный класс BigInteger, позволяющий обрабатывать сколь угодно большие числа ценой увеличения времени обработки.
import java.math.BigInteger;
public class Factorial {
public static void main(String[] args)
{
BigInteger f = new BigInteger("1");
System.out.println("0! = " + f.toString());
for (int n=1; n<=16; n++)
{ f = f.multiply(new BigInteger(""+n));
System.out.println( n + "! = " + f.toString());
}
}
}
Числа Фибоначчи:
Пример для версий Sun Java 6Используется рекурсивное определение чисел Фибоначчи.
public class Fibonacci {
static int fibonacci(int n)
{
return (n<=2 ? 1 : fibonacci(n-1) + fibonacci(n-2));
}
public static void main(String[] args)
{
for (int n=1; n<=16; n++)
System.out.print(fibonacci(n)+", ");
System.out.println("...");
}
}
Комментарии
]]>blog comments powered by Disqus
]]>