Первая программа на Java

User Rating: 5 / 5

Ваша первая программа на Java выглядит так:

package ru.allineed.samples.helloworld;

public class MySampleApplication {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Давайте вкратце разберём, что к чему. Любая программа на Java должна иметь "точку входа", т.е. то место, откуда начинается исполнение программы. В Java подобной точкой входа является специальный метод с именем main(). Как видно выше, к нему применены такие ключевые слова Java, как public, static и void

Давайте разберём каждое из них:

  • public - говорит о том, что наш метод main(), объявленный в классе MySampleApplication является публичным, т.е. он может быть вызван извне нашего класса. В нашем случае вызывать метод будет среда времени исполнения Java, а именно Java Runtime Environment (сокращённо JRE).
  • static - это ключевое слово указывает на то, что метод является статическим и может быть вызван без явного создания экземпляра нашего класса MySampleApplication. На практике это значит, что в нашей программе не требуется писать конструкцию с созданием экземпляра нашего приложения вида MySampleApplication myApp = new MySampleApplication().
  • void - ключевое слово говорит о том, что наш метод main() не возвращает никакого значения, т.е. результат выполнения метода main() не будет использоваться в других частях приложения. Для тех читателей, кто знаком с языками C или C++, здесь можно провести параллель: в них метод main() (да, в этих языках программирования точка входа в программу также называется main, поэтому имя точки входа в исполняемое приложение у Java в этом плане схоже) может возвращать целочисленное значение (тип int) - для того, чтобы, к примеру, использовать его в скриптах, вызывающих программу на C или C++. Создатели Java решили оставить вещи простыми и понятными, поэтому аргумент, почему метод main() ничего не вызывает примерно такой: когда метод main() заканчивает свою работу, программа на Java также завершает свою работу. Ничего нельзя сделать с возвращаемым объектом со стороны виртуальной машины Java, т.е. JVM (Java Virtual Machine), поэтому разработчики языка Java упростили этот момент касательно метода main(), и он не возвращает никакого значения. 

Идём далее, наш метод main() принимает конструкцию вида String[] args. Это не что иное, как список аргументов, передаваемых нашей программе при её запуске.

Например, если мы будем запускать нашу программу с помощью такой команды:

java ru.allineed.samples.helloworld.MySampleApplication one two three

то в списке аргументов мы получим три переданных строковых значения "one", "two", "three"

Наконец, конструкция System.out.println("Hello, World!") позволяет вывести на консоль приветственное сообщение с текстом "Hello, World!". Для первой программы совсем неплохо, мы уже умеем выводить что-то на консоль и запускать наше Java-приложение.

Теперь остановимся ещё на паре моментов:

1. Наша программа должна быть сохранена в обязательном порядке в файле с тем же именем, что и имя самого класса, т.е. MySampleApplication.java. Это требование компилятора Java - чтобы публичный класс сохранялся в файле с одноимённым названием. Поэтому не следует помещать приведённый выше код в файл с каким-то другим именем вроде MyProgram.java, такую программу компилятор просто не сможет скомпилировать и выдаст ошибку.

2. Обратите внимание на самую первую строку - package ru.allineed.samples.helloworld; Это объявление пакета, в котором располагается наш класс MySampleApplication. Каждый класс должен принадлежать какому-то пакету, образуя иерархию классов вашей исполняемой Java-программы. Это второе важное требование, которое нужно запомнить. В Java есть ещё так называемый пакет по умолчанию (default), который позволяет не указывать пакет в вашем классе явно, но это уже детали, на них сейчас не будем заострять внимание, т.к. в основном все хорошо спроектированные классы находятся в каком-то конкретном пакете.

Теперь чуть подробнее про то, как же запустить нашу программу:

1. Нам понадобится компилятор Java - утилита javac, которая позволит скомпилировать исходный код нашей программы на Java в байт-код. Для того, чтобы его заполучить, прежде всего нужно установить на вашей машине инструментарий для разработки Java, а именно Java Development Kit (сокращённо, JDK). Чтобы это сделать, скачайте дистрибутив, подходящий под архитектуру и ОС вашего компьютера на официальном сайте Oracle, после чего установите JDK на ваш компьютер. Здесь и далее (если не оговорено иное) автор будет приводить примеры программ, протестированных и проверенных на версии JDK не ниже 8й. Скачивать ли более старшие версии JDK - это Ваш выбор.

2. После того, как Вы сможете скачать и установить JDK, есть несколько опций - можно вручную скомпилировать подготовленный файл MySampleApplication.java с помощью команды javac MySampleApplication.java, либо воспользоваться популярными интегрированными средами разработки (Integrated Development Environment, сокращённо IDE), такими как:

  • JetBrains IntelliJ IDEA - скачать с официального сайта https://www.jetbrains.com/ru-ru/idea/download/#section=windows, можно выбрать одну из опций поставки - Ultimate (платная лицензия с множеством полезных опций для опытных и профессиональных разработчиков) или Community версия, бесплатная и вполне подходящая под цели первого знакомства с Java. На первых порах, пока только начинаете осваивать Java, я бы рекомендовал Community-версию, при желании Вы потом сможете сделать апгрейд и приобрести Ultimate
  • Eclipse - скачать с официального сайта - https://www.eclipse.org/downloads/. Бесплатная OpenSource IDE, хорошо подходящая под задачи разработки на Java.
  • NetBeans - ещё одна достойная IDE для разработки Java-приложений. Можно найти и скачать на сайте https://netbeans.apache.org/download/index.html 

По моей (субъективной) оценке, на основании опыта работы со всеми вышеперечисленными средами разработки, я бы порекомендовал IntelliJ IDEA как самую удобную в части пользовательского опыта IDE. Ряд задач по разработке может быть удобнее решать через Eclipse/NetBeans, но это, вероятнее всего, будут специфичные задачи, и в определённый момент вы сами поймете, что нужно использовать именно их. В конечном итоге, какую из вышеперечисленных сред использовать, решать вам, но все они достойны внимания и подойдут практически для всех задач по разработке приложений на Java.

3. Запускать уже скомпилированную в байт-код программу (файл с расширением .class) можно при помощи команды java (передавать ей параметры "one two three" совсем не обязательно, если программа не ожидает никаких конкретных аргументов):

java ru.allineed.samples.helloworld.MySampleApplication

Внизу этой статьи есть ссылка на наш Git-репозиторий, содержащий все примеры на Java из статей нашего сайта.

Также ссылку на класс с кодом примера и подробную инструкцию по запуску примеров на вашем компьютере вы найдете в блоке ниже. Инструкция по запуску всех примеров с сайта приводится для среды разработки IntelliJ IDEA.

Яндекс.Метрика