Недавно я решил выучить Java. Имея опыт работы с JavaScript, я решил, что он не может сильно отличаться. Просто придется потерять сценарий, верно? Помимо шуток, между ними много общего, но есть и существенные различия.

Во-первых, Java была создана для работы на любой машине. Когда его сценарий компилируется, результат может быть прочитан системами на базе Windows, Linux и ОС. JavaScript не поддерживает системы Windows, поэтому для чтения кода приходится использовать виртуальную машину на базе Linux.

Java основан на объектно-ориентированном программировании, которое доступно в JavaScript, но с Java это единственный способ запуска кода. Это означает, что доступ к каждой команде, выполняемой в программе Java, будет осуществляться через объект. JavaScript позволяет функциональное программирование, что позволяет создавать и вызывать функции в любом месте нашего скрипта кода.

Объявление переменных аналогично, однако вместо использования var, let или const нам нужно сообщить Java, какой тип данных мы объявляем. Ниже показано, как мы объявляем строковый тип данных в JavaScript по сравнению с Java. Обратите внимание, что в Java есть типы данных String и char. Мы можем думать об этом как о «char» как о простом типе данных, а String — как о массиве символов.

Сначала строка JavaScript:

let firstName = "James";

И эквиваленты Java:

char letter = 'm';
String firstName = "Matthew";

Типы данных очень похожи между ними. Мы можем сравнить число в JavaScript с int в Java. На самом деле в Java существует несколько числовых типов данных, которые можно использовать в определенных ситуациях для экономии памяти, но int — это самая основная форма числа. В Java также есть числовые типы данных для нецелых чисел и чисел в пределах определенного предела, но для простоты мы не будем в них вдаваться. Более подробную информацию вы можете посмотреть здесь.

int number = 283

Со сложными типами данных все немного иначе. Когда мы смотрим на массивы между двумя классами, мы видим, что массивы JavaScript — это их собственный тип данных, в то время как массив Java — это скорее модифицированный примитивный тип. Опять же, мы должны объявить, какой тип массива мы объявляем, за которым следует литерал массива, чтобы сообщить программе, что следующие данные должны храниться как массив. Или массивы Java имеют сходство с нашими массивами JavaScript в том, что они имеют нулевой индекс и к ним можно получить доступ так же, как если бы мы обращались к индексу JavaScript.

Массив JavaScript:

let bestPlayersArray = ["Brees", "Thomas", "Jordan"];
console.log(bestPlayersArray[0]);   //output: "Brees"

Массив Java:

String[] bestPlayers = {"Brees", "Thomas", "Jordan"};
int[] bestNumbers = {9, 13, 94};
System.out.println(bestPlayers[0]); //output: "Brees"
System.out.println(bestNumbers[0]); //output: "Brees"

Сходства достаточно близки, чтобы мы могли посмотреть на код Java и сказать, что большая его часть делает, если мы просто вернемся к нашим знаниям JavaScript. Следите за моим следующим блогом, где я углублюсь в операторы Java и манипулирование типами данных.