February 16, 2020

Программирование Java 1

Чтобы запустить программу на java нужно:

  1. Написать код
  2. Скомпилировать
  3. Выполнить при помощи JRE (Java Runtime Environment - среда выполнения java)

Что это за ужасное слово "скомпилировать"

  • Дело в том, что компьютер работает только с машинным кодом, для запуска программы java нужно перевести исходный код в машинный язык - этот процесс и называется компиляцией.

Для компиляции нужен компилятор.

Установить вы его можете на этом сайте (на самом деле нужен не сам компилятор, а JDK - java development kit - java набор для разработки) сайте (официальный сайт oracle)

если вам нужно помощь в установке нужного софта, вот ссылки на гайды:

  1. Скоро здесь появится ссылка.

Также я упоминал еще одно странное слово JRE (Java Runtime Environment - среда выполнения java) - это среда для выполнения программ на Java.

Если вы скачали и установили JDK, в него входит и среда выполнения, скачивать больше ничего не нужно.


А где мы будем писать код?

Можно конечно в блокнотике, но я не думаю, что это хорошая идея. Существует большое множество текстовых редакторов и IDE. Если с текстовыми редактором все понятно - программа для редактирования текста, то IDE - это Integrated development environment, интегрированная среда разработки - программа в которой встроено множество функций для разработки и сам редактор. Более подробно про IDE и текстовые редакторы вы можете прочитать здесь:

  1. Скоро здесь появится ссылка.

P.S. Если вы не хотите тратить время на статью про IDE и текстовых редакторах, вкратце - Для Java советую использовать Intelij IDE (устанавливайте community версию - она бесплатна), также многие используют NetBeans IDE, Eclipse IDE. Если вам достаточно текстового редактора рекомендую Sublime Text, Visual Studio Code, Atom.

Надеюсь, что на этом этапе вы уже установили и настроили все не обходимое для разработки. Мы приступаем к изучению самого языка.

По традиции первая программа представляет из себя вывод на экран надпись "Hello world!".

Если вы работаете в intelij IDE нажмите ПКМ во вкладе с деревом проекта -> по папке src. В контекстном меню выберите New -> класс Java.

Вот исходный код

Вы можете посмотреть код в онлайн редакторе

Давайте пробежимся по каждой строчке

  1. В Java все состоит из классов по этому для начала мы создаем класс. После стоят фигурные скобки - все что внутри относится к классу.
  2. Внутри класса создаем метод Main, он принимает параметр массив строк (что такое класс, метод и его параметры пока не берите в голову, поговорим об этом позже). Любая программа начинает свою работу от метода Main - то, что написано внутри - будет выполнятся.
  3. Далее пишется выражение, которое обеспечивает вывод строки "Hello World!" в консоль. Строка обязательно должна быть обернута кавычками, а после каждого выражения ставиться точка с запятой.
  4. И последние мы закрываем фигурные скобки.

Поздравляю вы написали свою первую программу.

Если сложно запомнить - не переживайте скоро это пройдет.

Для вывода в консоль используется данная конструкция

System.out.println(/*Сюда вставляется, что нужно вывести*/);

Также если и такая конструкция

System.out.print(/*Сюда вставляется, что нужно вывести*/);

Первая запись выводит на консоль и переходит на следующую строчку (все следующие отображения будут на следующей строчке).
Вторая запись выводит на консоль и не переход на следующую строчку (все следующие отображения будут на той же строчке).

Внутрь скобок вставляется значение, которое нужно вывести

Это может быть:

строчка, для вывода строки используются кавычки. Обратите внимание, что если вы работаете со строкой - нужно обязательно обернуть все в кавычки.

System.out.println("Строчка");

число

System.out.println(123);

выражение (о них поговорим немного позже)

System.out.printnl(10 + 20); // Выведется 30

В последним примере мы вывели значение операции сложения двух значений 10 и 20, вывод конечно же будет 30, но если мы обвернем все в кавычки у нас получится строка "10 + 20".

System.out.println("10 + 20"); // Выведется 10 + 20

Мы можем складывать строчки

System.out.println("Первая строка" + "Вторая строка"); // Вывод будет Первоя строкаВторая строка

Тут возникает одна проблема, между двумя строчками нету пробела. Есть три способа для решения:

  1. Поставить пробел в конец первой строки.
System.out.println("Первая строка " + "Вторая строка");

2. Поставить пробел в начало второй строки.

System.out.println("Первая строка" + " Вторая строка");

3. Между строками вставить еще одну строку с пробелом " ".

System.out.println("Первая строка" + " " + "Вторая строка");
Пробел тоже является символом

Экранирование символов

Существует несколько специальных символов. Любой из символов можно вставить в любое место строки.

\n - символ переход на следующую строку

\t - символ табуляции. Равен 4-ем пробелам.

Есть некоторые операторы, которые мы не можем вставить в строку, например кавычки ", одинарные кавычки ', обратный слэш \.

Чтобы их вывести перед нужным символом поставите обратный слэш \

System.out.println("\""); // Вывод одинарной кавычки "
System.out.println("\'"); // Вывод одинарной кавычки '
System.out.println("\\"); // Вывод обратного слэша \


Чтобы постоянно не писать объявление метода Main и System.out.println - можно использовать сниппеты (короткая запись) - пропишите psvm и нажмите TAB, для System.out.println() - sout и TAB.

В Java, как и во многих языках, есть возможность комментировать код. Они нужны, чтобы сделать какие-то пометки, для повышения читаемости кода.

Есть два вида комментариев, много строчный и одна строчный
Синтаксис:

// Одна строчный комментарий

/*
Много 
строчный
комментарий
*/ 

При компиляции комментарии игнорируются, они не как не влияют на работу программы.

Также вы можете закомментировать какую-то часть кода, если вам нужно на время отключить какой-то функционал.

Горячая клавиша для создания комментариев - выделяете часть, которую хотите закомментировать и ctrl + /

Переменные - это область памяти в которой хранится информация. Звучит немного сложно, но на деле - это некие коробочки для данных. При помощи переменных мы можем записывать и считывать какие-либо данные.

Для создания переменной нужно указать тип данных. Давайте разберемся с этим понятием.

Для чего они вообще нужны?
Если мы представляем переменную как коробку для данных - значит мы должны описать какая она будет.

Возможные значения
Каждый тип хранит конкретные значение к примеру числовой хранит числа, строковый - строки и т.д.


Размер
Надеюсь вы знакомы с единицами измерения в компьютере, вот вам таблица:

Чтобы создать коробку для данных, нам конечно нужно знать какого она должна быть размера.

Разные типы данных судя из размера и возможных значений предоставляет диапазон данных который мы можем запихнуть в переменную.

Вы узнали основные характеристики типов данных, теперь давайте познакомимся конкретно с ними.

Рассмотрим таблицу
int, числовой тип данных, хранит целые числа в диапазоне от -2147483648 до 2147483647 (не пугайтесь, вы легко запомните диапазон, когда узнаете принцип кодирования данных), весит 32 бита или 4 байта.

double, числовой тип данных, хранит числа с плавающей запятой (числа с дробной частью) весит 64 бита или 8 байт.

string, строковый тип данных, хранит строку, можно записать любые символы в кодировке UNICODE (всемирная кодировка, которая хранит все языки и символы), вес зависит от количества символов, каждый символ + 8 бит или 1 байт.

Для начала трех типов будет достаточно, позже вы узнаете и другие.

Теперь создадим переменную

Синтаксис:

ТипДанных ИмяПеременной;

Создание переменно типа int и именем num

int num;

Создание переменной типа String и именем str

String str;

Обратите внимание, что тип данных String пишется с большой буквы.

Создание переменной типа double и именем doubleNum

double doubleNum;

Правила именования переменных

  1. Первый символ не может быть цифрой
  2. Может содержать любые символа алфавита(русский язык тоже поддерживается), цифры (кроме первого символа), знаки подчеркивания "_" (также кроме первого символа) и знак доллара "quot;
  3. Не может быть аналогично ключевым словам Java


Запись данных в переменную

Синтаксис:

Имя = Данные;

Присвоим переменной num значение 1

num = 1;

Присвоим переменной str значение Hello

str = "Hello";

Напоминаю, что при указании значения для string используются кавычки

Присвоим переменной doubleNum значение 3.14

doubleNum = 3.14;

Остаток указывается после точки (в типе данных double, всегда должно быть значение после точки, если дробной части нету - пишется 0)


Создание переменной и выделения для нее памяти называется - инициализацией

А указание значения для переменной называется - определение переменной


Также мы можем инициализировать и определить переменную сразу

int variable = 10;


Теперь мы можем обращаться к данным с помощью имени переменной

Выведем на экран нашу переменную

System.out.println(num);

Вывод: 1


Также в переменную можно записывать результат вычислений (про вычисления вы узнаете в следующей статье)

a = 1 + 1;

в переменную a запишется 2

Константы - это переменные, которым нельзя изменить значение

Для создания константы перед типом данных используется оператор final

Имя константы стоит называть заглавными буквами (вы можете не соблюдать правило, это лишь рекомендация)

При инициализации константы, сразу же определяйте ее, иначе значение будет неопределенным

Синтаксис:

final ТипДанных Имя = Значение;

Создадим константу типа int с именем MYCONST и значением 100

final int MYCONST = 100;

Многие ошибочно считают, что константы ускоряет и облегчает программу - это не так. Константы созданы, чтобы случайно не изменить данные, которые не должны изменяться.

Вкратце пробежимся по пройденным темам.

Для разработки нужно установить JDK (java development kit - Java набор для разработки) в которую входят все нужные программы для разработки, JRE (java runtime environment) среда выполнения (JRE необходимо для запуска программа на Java).

Для работы с самим кодом, вам нужен текстовый редактор или полноценная среда для разработки (IDE - integrated development environment).

Мы написали первую программу с выводом Hello World.

Рассмотрели два сниппета (для быстрой записи) psvm (для написания метода main) и sout (для написания оператора вывода).

Узнали про одна строчные и много строчные комментарии.

Рассмотрели переменные и типы данных, которые позволяют хранить информацию. И Познакомились с константами.

К каждой статье будет прикреплена PDF версия и txt версия (должно быть удобно если вы ведете конспект в электронном виде), а в формате PNG краткий справочник по темам данной статьи и предыдущих.
Также в формате PDF будет прикреплена практическая часть с заданиями и подробная статья с решениями и разбором задач.
Будет и видео формат данной статьи на канале FLS.

Дополнительный материал

Практика к этой статье

Вы можете оставить любой вопрос в комментариях (не забудьте оставить ваши контакты)
Или
В Telegram чате
В Vk чате
В Discord канале (напишите в один из чатов и вам вышлют приглашение)