Глиф Учебники

Чем Java отличается от JavaScript

Справочник · Java · 1 минута чтения

Java и JavaScript — разные языки, у них разные создатели, правила и области применения. Общего у них в основном название и похожие на язык C фигурные скобки. Название JavaScript в 1995 году выбрали ради популярности, которую тогда набирала Java, — по сути это рекламный ход.

Главные отличия

JavaJavaScript
Где работаетна серверах, в Android, в настольных программахв браузере на страницах сайтов и на серверах через Node.js
Как запускаетсякомпилируется в байт-код, его выполняет JVMвыполняется браузером или Node.js прямо из текста программы
Типыстатические: тип переменной известен при компиляции и не меняетсядинамические: в переменной может оказаться что угодно
Устройство программывсё внутри классов, есть mainкоманды можно писать прямо в файле, классы не обязательны
СоздателиSun Microsystems, Джеймс ГослингNetscape, Брендан Эйх

Одна и та же программа

На Java:

Java
public class Main {
    public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 5; i++) {
            sum += i;
        }
        System.out.println("Сумма: " + sum);
    }
}
Вывод
Сумма: 15

На JavaScript:

JavaScript
let sum = 0;
for (let i = 1; i <= 5; i++) {
    sum += i;
}
console.log("Сумма: " + sum);
Вывод
Сумма: 15

Циклы и условия выглядят почти одинаково — оба языка взяли их у C. Но в Java тип int указан явно, а программа обёрнута в класс и метод main. В JavaScript let объявляет переменную без типа, а код выполняется сверху вниз без всякой обёртки.

Разница в типах заметна сразу. В Java строка int x = "5"; не скомпилируется: в целое число нельзя положить строку. В JavaScript let x = "5"; и потом x = 5; — нормально, а "5" * 2 даже даст 10: язык сам переведёт строку в число.

Какой учить

Знание одного языка помогает учить второй: циклы, условия, функции и объекты есть в обоих. Курс JavaScript — в теме JavaScript.

Подводные камни