Java

Java (вимовляється Джава; у нас інколи Ява) — об’єктно-орієнтована мова програмування, випущена компанією Sun Microsystems у 1995 році як основний компонент платформи Java.

Теорія

1. Основи програмування на Java
1.1. Ключові слова
2. Стиль оформлення та основні оператори
2.1. Оператори порівняння та логічні оператори
2.2. Змінні
3. Основні елементи Android
3.1. Класи та методи
3.2. Цикли
3.3. Масиви
4. Рядки
4.1. Робота з рядками
4.2. Конкатенація
4.3. Підрядки
4.4. Порівняння рядків
5. Об’єкти та об’єктні змінні
6. Пакети

Зараз мовою займається компанія Oracle, яка придбала Sun Microsystems у 2009 році. Синтаксис мови багато в чому схожий на C та C++. У офіційній реалізації, Java програми компілюються у байт-код, який при виконанні інтерпретується віртуальною машиною для конкретної платформи.

Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об’єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об’єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування.

Java вплинула на розвиток J++, що розроблялась компанією Microsoft. Роботу над J++ було зупинено через судовий позов компанії Sun Microsystems, оскільки ця мова програмування була модифікацією Java. Пізніше в новій платформі Microsoft .NET випустило J#, щоб полегшити міграцію програмістів J++ або Java на нову платформу. З часом нова мова програмування С#, стала основною мовою платформи, перейнявши багато чого з Java. J# востаннє включався в версію Microsoft Visual Studio 2005. Мова сценаріїв JavaScript має схожу із Java назву і синтаксис, але не пов’язана із Java.

Порівняння С++ та Java:

    1. Java
package ru.dchekmarev.test.performance;
 public class Test01 {
  public static void main(String[] args) {
  // long start = System.currentTimeMillis();
   int r = 0;
   for (int i = 0; i < 10000; i++) {
    for (int j = 0; j < 10000; j++) {
 	r = (r + (i * j) % 100) % 47;
	}
   }
   System.out.println("answer: " + r);
   }
}
    1. C++:
#include <iostream>
using namespace std;
 int main(void) {
 long r = 0;
  for (int i = 0; i < 10000; i++) {
   for (int j = 0; j < 10000; j++) {
    r = (r + (i * j) % 100) % 47;
	}
   } cout << "answer: " << r << endl;
}