Java — это всем известный и очень продуманный язык программирования с широким спектром применения: его можно как изучать за школьной партой, так и использовать для запуска масштабных коммерческих приложений. Главное его преимущество – он кросс-платформенный: после создания программы на Java вы можете запускать ее в разных ОС, включая серверы (Linux/Unix), настольные (Windows, macOS, Linux) и мобильные ОС. (Андроид, iOS).
У Java высокая производительность, поскольку он выполняет скомпилированный (то есть машинно-оптимизированный) код. Для разработчиков это значит, что его исходный код нужно скомпилировать, прежде чем запустить. Если вы знакомы с PHP и Python, которые позволяют выполнять исходный код напрямую, то компиляция станет для вас новым шагом в процессе разработки.
В этом уроке мы создадим программу «Hello, World!». С неё традиционно начинается изучение Java . Такая простая программа дает возможность новому программисту почувствовать, что что-то да заработало. Создав «Hello, World», вы начнете изучать базовый синтаксис Java, а также процесс компиляции и выполнения программы. Когда мы закончим, вы сможете писать и запускать базовый код Java.
Java не для Вас, если …
Требования
Для этого урока нам понадобится:
- Установленная Java (версия 11 или выше). Для Ubuntu и Debian выполните шаги для Варианта 1 в нашем руководстве Как установить Java. Для других операционных систем, включая Mac и Windows, см. другие решения для установки Java .
- Компилятор Java Development Kit (JDK). Чтобы скомпилировать исходный код, мы будем использовать компилятор по умолчанию, который называется javac. Вы можете скомпилировать свой исходный код либо на своем локальном компьютере, либо на удаленном сервере в облаке.
- (Необязательно) Среда выполнения Java (JRE), которая будет выполнять скомпилированный код. JRE является частью JDK, поэтому устанавливать ее дополнительно не нужно. Но можно установить JRE отдельно. Это полезно, если вы собираетесь запускать свой код на удаленном сервере, где его небезопасно компилировать. Вы можете загрузить и установить JRE через встроенный менеджер пакетов. Для Ubuntu и Debian используйте sudo apt install openjdk-11-jre. Для других дистрибутивов используйте соответствующие менеджеры пакетов, выполните поиск по ключевому слову jre и выберите версию 11 или выше.
Написание и выполнение программы «Hello, World!» на Java
Для многих людей их первая Java-программа часто оказывается и последней, поскольку даже самый простой код кажется слишком сложным и нужно изучить много нового, чтобы полностью его понять. Мы начнем с написания кода и его запуска, а затем посмотрим, как он работает.
Для начала создайте новый каталог hello-world, в который вы поместите свой код. Чтобы создать каталог проекта и перейти в него, выполните в терминале следующие команды:
mkdir hello-world
cd hello-world
В nano или в любом другом текстовом редакторе, создайте файл с Hello.java. Для nano используйте следующую команду:
Уроки Java для начинающих / #1 — Программирование на Java
Добавьте в файл код:
public class Hello public static void main(String[] args) System.out.println(«Hello, World!»); > >
Эта программа выдаст сообщение Hello, World! в консоли. Имя файла (в данном случае Hello с расширением .java) должно совпадать с именем public class в исходном коде, то есть Hello. Соответствие имени файла и public class в исходном коде является соглашением Java. (Об этом нужно помнить, потому что, если вы найдете какой-то полезный код, вы будете знать, как назвать файл исходного кода Java.)
Сохраните и закройте файл. В nano нажмите CTRL+X для выхода, Y для сохранения, и ENTER, чтобы подтвердить имя и закрыть файл. В терминале запустите javac из каталога, где находится файл Hello.java, чтобы код скомпилировался:
Команда javac скомпилирует исходный код Java с учетом имени файла.
Наконец, запустите программу с помощью java следующим образом:
Чтобы выполнить скомпилированный код, вы должны запустить java, за которым следует название класса (в нашем примере это Hello). Нельзя использовать расширение файла, такое как .java или .class, при выполнении кода.
Итог будет выглядеть так:
Hello, World!
Ваша программа запущена! Мы создали базовую программу Java, скомпилировали и выполнили ее.
Работа программы «Hello, World!»
Если вы привыкли писать код на Python или JavaScript, вы даже на примере простой программы увидите, что Java отличается. Любая программа на Java нуждается как минимум в двух вещах:
- Класс кода.
- Основной метод внутри класса.
Вам нужен класс, потому что Java является объектно-ориентированным языком , и весь код должен быть частью класса. Классы — это функционально связанный код. Обычно он не работает сам по себе, а служит шаблоном, из которого создается объект. Объект — это конкретный экземпляр класса, который можно использовать коде. Объекты имеют свойства и могут действовать, когда вы активируете их методы.
В вашей программе это класс Hello:
public class Hello public static void main(String[] args) System.out.println(«Hello, World!»); > >
Первая строка кода обозначает начало класса. Классы всегда начинаются с ключа class, за которым следует их название. В данном случае имя класса — Hello, и оно совпадает с именем файла, расширение которого – .java. Затем в конце фрагмента кода есть открывающая фигурная скобка (<) и закрывающая фигурная скобка (>), внутри которых вы пишете код класса.
У класса есть модификатор доступа (он есть и у методов). В данном случае это public , а значит, наш класс полностью доступен.
Чтобы упростить чтение кода, лучше всего использовать только один класс для каждого файла. В целом никаких ограничений нет, и вы можете иметь неограниченное количество классов в одном файле. Но есть один нюанс: в рамках одного файла только один класс может быть public, и он должен иметь и такое же имя с учетом регистра.
В дополнение к классу у программы также есть метод main. Main — это начальная точка выполнения для класса, а в нашем руководстве — для всей программы. У него специфический синтаксис: public static void main(String[] args):
public class Hello public static void main(String[] args) System.out.println(«Hello, World!»); > >
public – это модификатор доступа, который указывает, что на вызов метода нет ограничений.
static — это специальное ключевое слово, обозначающее, что метод (как в данном случае) или свойство не требуют явного создания нового объекта, чтобы вы могли его вызвать. Это слово имеет широкое применение; в частности оно может разрешить ситуации типа “курица или яйцо?”, при возникновении которых один из фрагментов кода должен иметь возможность породить первый объект программы, при этом не будучи частью самого объекта.
void — тип возвращаемого значения. Это значит, что метод не возвращает никакого значения . В этом случае код будет выводить сообщения на экран и, таким образом, напрямую выдавать вам результат выполнения. Как уже было сказано, void ничего не возвращает, но существуют и другие методы, они часто возвращают различную информацию, например буквенно-цифровые символы, целые числа или объекты.
String[] args — это параметр или ввод для main метода. Строка символов хранит буквенно-цифровую информацию. Квадратные скобки ([]) указывают, что это массив строк, а не одна строка. Имя этого массива — args. В этом случае у main() нет аргументов, но если бы они были, они бы содержались в этом массиве.
Если вы пропустите какой-либо из основных атрибутов метода, например, public, вы можете не получить синтаксическую ошибку, но код не будет работать должным образом.
Чтобы вывести текст на консоль, используете метод System.out.println():
public class Hello public static void main(String[] args) System.out.println(«Hello, World!»); > >
Метод дает компьютеру команду, и тот выполняет действие. Метод можно узнать по круглым скобкам, в которых он записывается : (). Сам метод называется println() и принимает один аргумент для отображаемого текста. System.out предшествует методу, чтобы указать, что он является частью основных функций Java (System) для вывода (out).
В этом случае мы используем метод из подпакета out, который является частью пакета System. Чтобы лучше понять, как организованы классы в Java, представьте, что иерархия классов подобна иерархии файловой системы – с родительскими папками и соответствующими зависимыми подпапками. В Java эти папки называются пакетами . Связанные классы помещаются в один пакет или подпакет в зависимости от степени детализации иерархии.
Аргументом System.out.println() является строка: «Hellom World!». Мы знаем, что это строка, потому что строки всегда заключаются в двойные кавычки. Для строк Java нельзя использовать одинарные кавычки, в отличии от других языков.
Одной из особенностей синтаксиса Java является то, что он требует ставить точку с запятой в конце каждого оператора, например, для вывода текста: System.out.println(“Hello, world!”);.
Примечание. Если вы используете IDE или текстовый редактор с поддержкой синтаксиса Java, вам не нужно обращать внимание на отсутствующие точки с запятой, поскольку эти программы автоматически позаботятся об этом, а также о других особенностях синтаксиса.
В этом разделе мы рассмотрели программу построчно, чтобы понять, как она работает. В следующем разделе вы увидите, что происходит, когда вы компилируете и запускаете программу.
Компиляция и запуск программы «Hello, World!»
Итак, давайте посмотрим, что происходит, когда вы компилируете и запускаете свою Java-программу. Для компиляции кода мы используем javac из JDK :
javac прочитает исходный код, проверит его на наличие синтаксических ошибок, оптимизирует и создаст файл по имени Hello.class. Файлы Java с расширением .class — это машинный код, который JRE может интерпретировать и запускать.
Вы можете просмотреть файл Hello.class, выполнив команду ls из каталога проекта.
Эта команда выводит список файлов в вашем текущем каталоге:
После того, как код скомпилирован, запустите его с помощью исполняемого файла java из JRE :
JRE запускает только скомпилированный код и не может выполнять код из стандартного файла. Точно так же, если вы попытаетесь прочитать скомпилированный файл .class с помощью стандартного текстового редактора, вы не сможете это сделать. Однако с помощью таких инструментов, как Java Decompiler , вы можете читать скомпилированные файлы, что может быть полезно при отладке программ, исходного кода которых у вас нет.
С помощью этой команды вы указываете исполняемому файлу JRE java обработать класс с именем Hello, который находится в файле Hello.class.
Когда Hello, World! выводится на консоль, мы можем быть уверены, что:
- у нас есть рабочая среда Java, в которой можно компилировать и выполнять код.
- Java успешно нашла код класса Hello и может получить к нему доступ.
- Поток выполнения начался с метода main(). Там был вызван метод System.out.println() со строковым аргументом Hello, World!.
- Так как другого кода нет, программа успешно завершит работу.
Вызывая java, вы запускаете тип виртуальной машины Java virtual machine (JVM).
JVM хорошо изолирована и не зависит от внешней среды, библиотек или операционной системы хостинга. JVM ведет себя почти одинаково в разных ОС, что делает Java переносимой, понятной и безопасной. В этом и отличие от других языков, например PHP, где интерпретатор PHP использует множество собственных библиотек ОС.
Поскольку для достижения такой изоляции Java запускает собственную виртуальную машину, то этот процесс потребляет много памяти. Но Java оптимизирована для эффективного управления ресурсами. Даже при потреблении ресурсов, связанных с запуском собственной виртуальной машины, Java обладает высокой производительностью для больших, сложных и долго выполняющихся программ.
Другими словами, среди доступных языков программирования можно найти и более простые и эффективные способы вывода сообщений на экран. Но при помощи Java вы сможете создавать сложные программы, совместимые с различными операционными системами.
Итоги
Поздравляем! Вы написали свою первую программу на Java.
Вы можете продолжить работу с кодом в файле Hello.java самостоятельно: к примеру, вы можете посмотреть, что произойдет, если вы измените текст или удалите точку с запятой и получите сообщение об ошибке. Обязательно компилируйте код (javac Hello.java) каждый раз, когда вы вносите изменения в файл Hello.java.
Источник: www.8host.com
Java Core для самых маленьких. Часть 1. Подготовка и первая программа
Как-то давно мы с моим товарищем и коллегой Егором готовили обучающий курс по Java Core. Но как-то не срослось и это дело не было доведено до какого-либо логического конца. И вот, спустя время, я решил, что не стоит пропадать добру и по-этому запускаю серию статей про Java Core для самых маленьких.
Начало разработки языка было положено еще в 1991 году компанией Sun Microsystems, Inc. Вначале язык был назван Oak (Дуб), но в 1995 он был переименован в Java. Публично заявили о создании языка в 1995 году. Причиной создания была потребность в независящем от платформы и архитектуры процессора языке, который можно было бы использовать для написания программ для бытовой электротехники. Но поскольку в таких устройствах применялись различные процессоры, то использование популярных на то время языков С/С++ и прочих было затруднено, поскольку написанные на них программы должны компилироваться отдельно для конкретной платформы.
Особенностью Java, которая решила эту проблему, стало то, что компилятор Java выдает не машинный исполняемый код, а байт-код — оптимизированный набор инструкций, которые выполняются в так называемой виртуальной машин Java (JVM — Java Virtual Machine). А на соответствующую платформу предварительно устанавливается JVM с необходимой реализацией, способная правильно интерпретировать один и тот же байт-код. У такого подхода есть и слабые стороны, такие программы выполняются медленнее, чем если бы они были скомпилированы в исполняемый код.
Установка программного обеспечения — JDK
В первую очередь, нам нужно установить на компьютер так называемую JDK (Java Development Kit) — это установочный комплект разработчика, который содержит в себе компилятор для этого языка и стандартные библиотеки, а виртуальную машину Java (JVM) для вашей ОС.
Для того чтобы скачать и установить JDK открываем браузер, и в строке поиска Google вводим “download JDK” или переходим по этой ссылке.
Скролим ниже и находим таблицу с вариантами скачивания JDK. В зависимости от нашей операционной системы выбираем файл для скачивания.
Процесс установки для ОС Windows имеет несколько этапов. Не стоит пугаться, все очень просто и делается в несколько кликов. Вот здесь подробно описан процесс установки. Самое важное для пользователей Windows это добавить системную переменную JAVA_HOME. В этой же статье достаточно подробно расписано как это сделать (есть даже картинки).
Для пользователей MacOS также стоит добавить переменную JAVA_HOME. Делается это следующим образом. После установки .dmg файла JDK переходим в корневую папку текущего пользователя и находим файл .bash_profile. Если у вас уже стоит zsh то ищем файл .zshenv. Открываем этот файл на редактирование и добавляем следующие строки:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home export PATH=$:$
Здесь обратите внимание на версию JDK указанную в пути — jdk1.8.0_271.jdk. Могу предположить, что у вас она будет отличаться, поэтому пройдите по указанному пути и укажите свою версию. Сохраняем изменения и закрываем файл, он нам больше не понадобится.
Теперь важно проверить правильность установки JDK. Для этого открываем командную строку, в случае работы на Windows, или терминал для MacOS. Вводим следующую команду: java -version Если вы все сделали правильно, вы увидите версию установленного JDK. В ином случае вы, скорее всего, допустили где-то ошибку. Советую внимательно пройтись по всем этапам установки.
Установка IDE
Теперь нам нужно установить среду разработки, она же IDE (Integrated development environment). Что собой представляет среда разработки? На самом деле она выглядит как текстовый редактор, в котором мы можем вводить и редактировать текст. Но помимо этого, этот текстовый редактор умеет делать проверку синтаксиса языка на котором вы пишете. Делается это для того чтобы на раннем этапе подсказать вам о том, что вы допустили ошибку в своем коде.
Также среда разработки содержит в себе компилятор. Компилятор — это специальный инструмент, который будет превращать код, который вы пишете, в машинный код или близкий к машинному коду.
Кроме этого, среда разработки поддерживает отладчики которые помогают править и отлаживать ваш код в случае ошибки. Скажем так, это были описаны основные возможности IDE. Современные IDE предоставляют огромное количество инструментов, которые могут помочь в написании, отладке, автоматической генерации кода и решить множество других проблем.
Для начала нам нужно выбрать и среду разработки. Их довольно таки много, и самыми популярными из них являются: IntelliJ IDEA, NetBeans, Eclipse. Для себя я выбираю IntelliJ IDEA. Она является самой удобной на мой взгляд, и хоть она и платная, на официальном сайте можно найти бесплатную версию которая называется Community.
Этой версии будет вполне достаточно для изучения основ Java. Вообщем будем работать в IntelliJ IDEA.
Итак, открываем браузер, в поисковой строке вводим «Download IntelliJ IDEA Community» или переходим по этой ссылке. Выбираем версию ОС и качаем версию Community.
В установке IntelliJ IDEA нет ничего военного. На крайний случай на ютубе есть множество видео о том, как установить эту программу.
Первая программа
Теперь мы готовы создать нашу первую программу. В окошке запустившийся IDE нажимаем New Project.
В новом окошке в левой панели выбираем Java.
Обратите внимание! В верхнем окошке, справа, возле надписи «Project SDK:» должна находится версия Java, которую вы установили вместе с JDK. Если там пусто, то вам нужно будет указать путь к вашему JDK вручную. Для этого в выпадающем списке нажмите «Add JDK. » и укажите путь к вашему JDK, который был предварительно установлен.
Теперь можем нажать на кнопку Next. В следующем окошке, вверху, поставьте галочку “Create project from template” и выберите “Command Line App”. И снова нажимаем Next.
Дальше нам нужно указать имя программы. У меня это будет Hello World, желательно чтобы имя проекта было введено латиницей, и на английском языке.
Примечание. Все программы, имена программ, принято писать на английском языке, и желательно придерживаться такого стиля, что является хорошим тоном в программировании.
После указываем путь к проекту программы.
Далее, нам нужно указать базовый пакет нашей программы. О пакетах я расскажу вам позже, обычно компании используют свое имя Интернет-домена в обратном порядке, но вы можете написать, например, свои имя и фамилию через точку в нижнем регистре (маленькими буквами), тоже латиницей. Я же использую псевдоним. Когда все поля будут заполнены — нажимаем “Finish”.
После этого вы увидите главное окно IDE, в котором уже будет создана ваша первая, почти готовая консольная программа.
Это окно, то что вы будете видеть 80-90%, а иногда и 100% времени, работая программистом.
Для того чтобы закончить ваше первое приложение, останется добавить строчку кода System.out.print(«Hello world!»); как показано на скриншоте.
Чтобы скомпилировать и запустить на выполнение вашу программу, вам нужно нажать кнопочку с зеленым треугольничком на верхней панели справа, или в меню найти пункт Run -> Run “Main”. И внизу на нижней панели, под окном редактора, в консоли, вы увидите результат выполнения вашей программы. Вы увидите надпись Hello World! Поздравляю, вы написали свою первую программу на Java.
Разбираем первую программу
В своем первом приложении вы можете увидеть много непонятных символов и слов, но на данном этапе вы должны воспринять их как данность, позже, в следующих частях, я расскажу о каждом из них, и зачем они нужны. На данном этапе вам нужно понять что это стандартные составляющие любого Java-приложения, и в последующих приложениях эти компоненты будут изменяться минимально.
Пройдемся по порядку:
В начале мы видим package com.zephyr.ventum; — это объявление пакета, и это постоянный атрибут файлов с исходным кодом в Java. Простыми словами, это локация вашего файла в проекте и любой .java файл должен начинаться с подобной строки.
Ключевое слово — это слово зарезервированное языком программирования. Например, package — это тоже ключевое слово.
Фигурные скобки <> у метода main обозначаю начало и конец тела метода, весь код метода должен располагаться между этими скобками. Аналогичные скобки есть и у класса Main.
Следующая строка является // write your code here однострочным комментарием.
Комментарием является текст который игнорируется компилятором. По-этому с помощью комментариев вы можете оставлять в коде подсказки для себя и других, кто будет читать ваш код, или же для документирования вашего кода. Существует несколько видов комментариев, основными из них являются однострочный, и многострочный.
Многострочный комментарий будет выглядеть следующим образом:
/* write your code here */
9 лучших IDE для разработчиков JAVA
Java — один из самых простых языков программирования. Он широко используется для разработки настольных, корпоративных, мобильных и веб-приложений. Существует несколько IDE для работы с Java. Этот материал поможет вам выбрать лучшую Java IDE.
Что такое IDE?
IDE (интегрированная среда разработки) — это приложение, которое облегчает разработку приложений. В целом, IDE основана на графическом интерфейсе пользователя (GUI). Она призвана помочь разработчику создавать программные приложения с помощью комбинированной среды со всеми необходимыми инструментами под рукой.
Eclipse
Eclipse — это лучшая бесплатная IDE для разработчиков JAVA и в основном написанная на Java. Она используется в различных платформах для создания мобильных приложений, настольных программ, веб-сайтов. Многие разработчики предпочитают эту IDE для программирования на Java.
Основные возможности Eclipse
- Поддержка Java 8.0 и 9.0.
- Встроенный статический анализ кода.
- Удобство использования и отличная производительность.
- Поддержка Windows/Linux/Mac OS X.
- Помогает в рефакторинге кода, редактировании с быстрой проверкой, инкрементальной компиляцией, перекрестными ссылками, предложениями кода.
- Интеграция Git.
IntelliJ
IntelliJ — еще одна лучшая бесплатная среда разработки Java IDE. Эта IDE в основном используется для разработки приложений для Android, программирования на Java, Java SE, Groovy и Scala. Это легкая IDE.
Основные возможности IntelliJ
- Лучшая поддержка новейших технологий Java
- Легкий вес
- Удобный для пользователя
- Быстрое и интеллектуальное редактирование кода
- Простота управления проектом
- Интеграция Git
Некоторые функции отсутствуют в версии для сообщества. Чтобы разблокировать дополнительные функции, необходимо приобрести лицензию.
NetBeans
NetBeans — еще одна популярная Java IDE. NetBeans — это официальная IDE для Java 8. Она позволяет разрабатывать приложения из набора программных компонентов, называемых модулями. Работает под управлением Windows, macOS, Linux и Solaris. Немного похоже на другие IDE.
Основные возможности NetBeans
- Это IDE с открытым исходным кодом, которая легко устанавливается, может работать на различных платформах и проста в использовании.
- Каждая новая версия NetBeans поставляется с импровизированным Java-редактором.
- Редактор Java облегчает программистам создание пользовательских программных приложений, выделяя код Java как синтаксически, так и семантически.
- Инструменты, предоставляемые NetBeans, даже помогают разработчикам проводить рефакторинг и писать код без ошибок.
- Интеграция Git.
JDeveloper
JDeveloper — это бесплатная Java IDE, разработанная компанией Oracle. Она предлагает интегрированную структуру разработки с несколькими визуальными инструментами разработки. JDeveloper охватывает весь жизненный цикл разработки, от кодирования, проектирования, отладки, оптимизации и развертывания.
Oracle JDeveloper может интегрироваться с приложением Oracle (Oracle ADF) для дальнейшего упрощения разработки приложений. Помимо Java, JDeveloper можно использовать для разработки приложений на языках GTML, JavaScript, PHP, SQL и XML.
BlueJ
BlueJ — это интегрированная среда разработки для Java. Хотя BlueJ в первую очередь предназначен для образовательных целей, он подходит для разработки программного обеспечения в небольших масштабах. BlueJ разработан как готовая к использованию IDE для начинающих.
DrJava
Созданная группой JavaPLT Университета Райса, DrJava представляет собой интегрированную среду разработки. Разработана специально для начинающих и студентов. Хотя DrJava не так мощна, как другие IDE, она имеет удивительно простой интерфейс.
В дополнение к функции тестирования JUnit, DrJava демонстрирует возможность интерактивной оценки Java-кода из консоли, представляя вывод в той же консоли.
jGRASP
jGRASP , без сомнения, является одной из лучших легких IDE для Java. Помимо интегрированного отладчика и рабочего места для Java-разработчиков, jGRASP также позволяет генерировать графы профилей сложностей и диаграммы классов UML.
Разработанная в первую очередь для автоматического создания визуализаций программного обеспечения, IDE улучшает общую понятность программного обеспечения. Легкая Java IDE способна создавать статические визуализации, визуализации структуры исходного кода, а также визуализации структуры данных во время выполнения.
jGRASP служит полезным редактором исходного кода для языков программирования, отличных от Java. Бесплатная IDE настраивается для работы с большинством бесплатных и коммерческих компиляторов для различных языков программирования.
MyEclipse
Созданная и поддерживаемая компанией Genuitec, MyEclipse — это собственная IDE, основанная на платформе Eclipse. Широкий спектр инструментов, доступных в MyEclipse, можно использовать как для разработки Java-приложений, так и для веб-разработки.
Помимо поддержки Angular, HTML, JavaScript и TypeScript, MyEclipse обеспечивает поддержку коннекторов серверов приложений и коннекторов баз данных. Другие примечательные особенности IDE включают управление проектами Maven, Spring Tooling и коннекторы WebSphere.
Xcode
Доступная совершенно бесплатно, Xcode — это IDE, разработанная для macOS компанией Apple Inc. Она позволяет разработчику программировать на Java на macOS, IDE поставляется с множеством инструментов для разработки программного обеспечения для iOS, macOS, tvOS и watchOS.
Источник: new-science.ru