Как сделать java приложение для windows

Обновлено: 19.09.2024

В разделе «Свойства» вашего ПК перейдите на вкладку «Дополнительно», а затем в «Переменные среды…».

В появившемся окне создайте новую переменную с названием Path и в ее значение вставьте скопированный до этого путь.

Запустите командную строку и вбейте в нее команду javac для того, чтобы убедиться в правильности настройки JRE. При этом должен появиться перечень аргументов.

Инсталляция и настройка всех компонентов, требуемых для удобной работы с Java, закончены.

Установка и средства IDE

Перед началом работы с Java будет полезно установить одну из IDE (Integrated Development Environment). Это комплект программных инструментов, предназначенный для создания программного обеспечения. Этот софт облегчает написание, запуск, отслеживание и тестирование кода. Он наиболее эффективен при разработке сложных программных продуктов. Различают несколько распространенных средств IDE.

«Блокнот». Это самое простое и доступное в освоении средство, используемое при создании Java-приложений. Для начала работы необходимо только установить JDK и указать к ней путь. В блокноте создается сам код, а его компиляция выполняется в командной строке. Однако этот редактор не позволяет программировать сложный софт, так как в нем отсутствуют дополнительные функции, имеющиеся в более продвинутых IDE.

наличие функции форматирования кода;

возможность инсталляции сторонних языковых библиотек;

наличие интуитивно понятного графического интерфейса на русском языке.

наличие инструментов для удобного форматирования кода;

возможность разделения кода на функциональные модули;

простота применения единого кода в различных проектах;

наличие функции перетаскивания объектов (drag-and-drop);

возможность просматривать содержимое библиотек.

IntelliJ IDEA. Это IDE-средство часто используют Java-разработчики. Примечательно, что оно и создается на языке Java. В IntelliJ IDEA предусмотрены инструменты, облегчающие ориентацию в программном коде. Также благодаря им поиск и исправление ошибок не составят труда и не займут много времени.

JCreator. Это прогрессивное средство IDE для Java, написанное на C++ и выделяющееся среди других исключительно высокой производительностью и скоростью работы.

Написание простейшей программы на Java

После установки и настройки всех вспомогательных рабочих компонентов на компьютере можно написать тестовую программу, которая позволит удостовериться в их правильной работе. Разберемся, что же необходимо для этого сделать. На примере упражнения ознакомимся с общей структурой кода на Java и попробуем собственные силы в разработке софта на этом языке. Для упрощения задачи предварительно рекомендуется изучить основы объектно-ориентированного программирования. Типовая схема программы, написанной на Java, выглядит следующим образом:

схема программы, написанной на Java

в верхнем меню кликните вкладку File, затем New и в появившемся меню нажмите на Java Project;

в новом окне укажите название проекта и выставьте необходимые настройки (при сомнениях в правильности действий оставьте их по умолчанию), после чего нажмите Next;

создайте в новом проекте класс, кликнув по нему правой кнопкой мыши и последовательно нажав New и Class;

дайте классу название (в нашем случае – first) и щелкните кнопку Finish.
Классическая программа, отображающая на дисплее фразу «Hello, world!», будет иметь следующий код:

public class first <
public static void main(String args[])
<
System.out.println("Hello, world!");
>
>

В этой программе будут присутствовать следующие компоненты:

public – модификатор доступа, показывающий часть кода, из которой используется наш класс (в данном случае это весь код);

class – ключевое слово, обозначающее класс, а не иную категорию;

first – название класса (фигурными скобками обозначаются его начало и конец);

public static void main(String args[]) – объявление публичного статического метода (вызов которого не подразумевает создания объекта класса).

В нашем примере метод ничего не возвращает, аргументами для него является массив строк. Единственная содержащаяся в нем команда будет отображать на экране фразу «Hello, world!». Обратите внимание, что println можно заменить на print. Они различаются между собой только в наличии в первом случае переноса строки. После того как вы написали программу, для ее запуска (starta) щелкните белую стрелку в зеленом круге на панели вверху (при наведении на нее мышкой высветится Run). Внизу появится консоль с фразой «Hello, world». Поздравляем с успехом – вы создали свою первую программу на Java. Теперь можно приступать к дальнейшему освоению этого популярного языка программирования.

В последнее время на программистских форумах развернулись неслабые дискуссии (для примера см. здесь, здесь и здесь, и эта сегодняшняя) об Electron и его влиянии на сферу разработки десктопных приложений.

Если вы не знаете Electron, то это по сути веб-браузер (Chromium) в котором работает только ваше веб-приложение… словно настоящая десктопная программа (нет, это не шутка)… это даёт возможность использовать веб-стек и разрабатывать кросс-платформенные десктопные приложения.

Самые новые, хипстерские десктопные приложения в наше время сделаны на Electron, в том числе Slack, VS Code, Atom и GitHub Desktop. Необычайный успех.

Мы писали десктопные программы десятилетиями. С другой стороны, веб только начал развиваться менее 20 лет назад, и на протяжении почти всего этого времени он служил только для доставки документов и анимированных «гифок». Никто не использовал его для создания полноценных приложений, даже самых простых!

Десять лет назад невозможно было себе представить, что стек веб-технологий можно использовать для создания десктопного приложения. Но наступил 2017 год, и много умных людей полагают, что Electron — отличная идея!

Здесь не столько результат превосходства веб-стека для создания приложений (он далёк от такого превосходства, и вряд ли кто-то будет спорить, что веб — это бардак), сколько провал существующих фреймворков для разработки UI на десктопах. Если люди предпочитают отгружать со своими программами целый веб-браузер только для того, чтобы использовать отличные инструменты вроде JavaScript (сарказм) для разработки, что-то пошло совершенно не так.

Так что это за ужасные альтернативы, которые проиграли конкурентную борьбу веб-стеку?

Я решил взглянуть и создать реальное приложение на одной из этих технологий.

Ели вы не возражаете, что несколько групп разработки будут создавать разные версии приложения под разные ОС, то варианты выглядят примерно так: AppKit для MacOS, WPF для Windows (я не специалист по разработке под конкретные платформы, так что дайте знать, пожалуйста, какие варианты в наши дни более популярны).

Однако реальные конкуренты Electron — это мультиплатформенные фреймворки. Думаю, среди них самыми популярными сегодня являются GTK+, Qt и JavaFX.

GTK+ написан на C, но связан со многими другими языками. Этот фреймворк использовался для разработки прекрасной платформы GNOME-3.

Qt кажется самой популярной альтернативой Electron в дискуссиях, которые попадались мне на глаза… Это библиотека C++, но тоже связанная с другими языками (хотя кажется, что никакие из них не поддерживаются на коммерческой основе, и сложно сказать, насколько они доработаны). Qt вроде бы популярный выбор для встроенных систем.

JavaFX

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

Что бы вы ни думали о JVM, не существует никакой другой платформы (кроме, может быть, самого Electron!), настолько простой для кросс-платформенной разработки. Как только вы создали свой jar, на любой платформе, вы можете распространять его среди пользователей всех ОС — и он просто будет работать.

При большом разнообразии языков, которые сейчас поддерживаются в JVM, выбор языка тоже не должен стать проблемой: определённо найдётся такой, какой вам понравится (в том числе JavaScript, если вы не способны от него отказаться), и вы можете использовать JavaFX с любым языком JVM без особых проблем. В этой статье, кроме Java, я покажу немного кода на Kotlin.

Сам UI создаётся просто кодом (если у вас есть замечательная поддержка IDE от IntelliJ, Eclipse или NetBeans: это всё отличные бесплатные IDE, которые, наверное, превосходят любых конкурентов и, кстати, представляют собой самые лучшие образцы десктопных приложений на Java) или в визуальном конструкторе UI: SceneBuilder (который умеет интегрироваться в IntelliJ) или NetBeans Visual Debugger.

JavaFX — не новая технология. Она появилась в декабре 2008 года и сильно отличалась от того, что мы видим сегодня. Идея заключалась в создании современного фреймворка UI для замены устаревшего Swing Framework, который являлся официальным фреймворком JVM с конца 90-х.

Oracle чуть не испортила всё с самого начала, приступив к созданию особого, декларативного языка, который предполагалось использования для создания UI приложений. Это не очень хорошо восприняли Java-разработчики, и та инициатива чуть не погубила JavaFX.

Заметив проблему, Oracle решила выпустить JavaFX 2 в 2011 году без собственного особого языка, а вместо этого применив FXML в качестве опции для чистого Java-кода (как мы увидим позже).

Около 2012 года JavaFX обрёл некую популярность, а Oracle приложила значительные усилия для улучшения и популяризации этой платформы. С версии 2.2 фреймворк JavaFX стал достаточно цельным фреймворком, но его по-прежему не включали в стандартную среду выполнения Java (хотя он всегда поставлялся вместе с JDK).

Только с версии JavaFX 8 (изменение версии сделано для соответствия Java 8) он стал частью стандартного рантайма Java.

Сегодня фреймворк JavaFX может и не является крупным игроком в мире UI, но на нём сделано немало реальных приложений, у него есть довольно много связанных библиотек и его портировали на мобильную платформу.

В своём приложении для просмотра логов LogFX, я решил просто использовать Java (потому что там в основном довольно низкоуровневый код, а я хотел сконцентрироваться на скорости и малом размере пакета) и IntelliJ в качестве IDE. Я почти решился писать на Kotlin, но поддержка Java в IntelliJ оказалась настолько хорошей, так что писать на Java (точнее, позволить IntelliJ делать это за меня — это ближе к истине) стало не такой большой проблемой, чтобы оправдать лишние 0,9 МБ в дистрибутиве.

Я решил не использовать FXML (язык описания GUI для JavaFX на основе XML) или визуальный конструктор UI, потому что интерфейс у программы очень простой.

Итак, посмотрим на какой-нибудь код!

Java Hello World

Приложение JavaFX — это просто класс, который расширяет javafx.application.Application и показывает JavaFX Stage .

Вот как пишется Hello World на JavaFX:

src/main/java/main/JavaFxExample.java

На «маке» этот код покажет примерно такое:


FXML+Java Hello World

Если вам трудно писать код для UI и вы предпочитаете использовать язык разметки, вот эквивалент того же кода с FXML:

src/main/resources/main/Example.fxml

src/main/java/main/JavaFxExample.java

Обратите внимание, что IntelliJ поддерживает FXML и свяжет его содержимое с соответствующим кодом Java и наоборот, подсветит ошибки, сделает автодополнение, справится с импортом, покажет встроенную документацию и так далее, что довольно круто… но как я раньше сказал, решено было не использовать FXML, поскольку задуманный UI был очень простым и довольно динамичным… так что я больше не покажу кода FXML. Если интересно, изучите руководство по FXML.

Hello World на Kotlin+TornadoFX

Прежде чем двигаться дальше, давайте посмотрим, как такой код выглядит на современном языке вроде Kotlin с его собственной библиотекой для написания приложений JavaFX, которая называется TornadoFX:

src/main/kotlin/main/app.kt

Многим может показаться привлекательным использовать Kotlin и JavaFX, особенно если вы предпочитаете безопасность типов (в TornadoFX есть приятная функция «типобезопасные таблицы стилей») и если добавить лишние 5 МБ в приложения для вас не проблема.

Даже если подобные накладные расходы кажутся чрезмерными и вы не хотите включать фреймворк в программу (и разбираться со всеми его сложностями и причудами), то Kotlin нормально работает и с чистым JavaFX.

Теперь, когда мы разобрались с основами JavaFX, посмотрим, как применить стили для приложений JavaFX.

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

Предположим, что мы хотим сделать тёмный фон и белый текст, как показано на скриншоте:


Программные и встроенные стили

Один из вариантов (мучительный, но зато с безопасными типами) — сделать это программным способом:


Более простой программный способ — установить стили в CSS:


Обратите внимание, что здесь IntelliJ опять обеспечивает автодополнение для значений строк.

Если вы используете FXML:

Использование отдельных таблиц стилей

Если вы не хотите удаляться от мира веба и предпочитаете задавать стили в отдельных таблицах стилей, JavaFX и это умеет! Именно такой подход я выбрал, потому что он позволяет стилизовать всё в одном месте и даже даёт пользователям возможность выбирать стили на свой вкус.

Для этого сначала создаём таблицу стилей:

src/main/resources/css/hello.css

Теперь добавляем её в Scene :

Заметьте, что таблицы стилей устанавливают не только фоновый цвет StackPane как darkslategray , но и меняют основной цвет темы.

Это значит, что все управляющие элементы и «фоновые» элементы примут цвет, основанный на этом цвете. Довольно изящная функция, потому что вы можете устанавливать цвета на базе основного цвета. Так вы гарантируете, что если изменить основной цвет, то практически всё будет хорошо выглядеть в новой расцветке.

Например, в нашем случае более подходящим цветом текста станет не белый, а «противоположный» цвет относительно основного цвета темы, чтобы текст всегда оставался читаемым:


Таблицы стилей JavaFX довольно умные, для дополнительной информации см. CSS Reference Guide.

Вот пример простого приложения, где мы поставили кнопку вместо текста. Слева показаны стили по умолчанию, а справа используется таблица стилей, которую мы только что создали:



Слева: стили по умолчанию JavaFX. Справа: кастомные стили, созданные выше

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

Вот как LogFX выглядит в итоге с темой по умолчанию:


Обратите внимание, что для кнопок я использовал иконки FontAwesome. Было довольно просто стилизовать кнопки в CSS. Просто убедитесь в том, чтобы шрифт устанавливался как можно раньше с помощью такой инструкции:


С кастомными таблицами стилей можно кардинально изменить внешний вид приложения. Например, вот очень зелёная тема в Linux Mint:


Хотя хороший вкус автора этой зелёной темы под вопросом, она показывает мощные возможности стилизации в JavaFX. Здесь вы можете реализовать практически всё, на что способно ваше воображение.

В завершение хотел бы упомянуть классные эффекты, которые есть в JavaFX… Я хотел сделать начальный экран, который бы хорошо выглядел просто с форматированным текстом.

В JavaFX это делается просто. Вот что у меня получилось (я сделал экран на основе образца GroovyFX):


И вот какая таблица стилей соответствует этому стартовому экрану:


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

В следующих разделах обсудим, как менять виды (экраны), перезагружать код на лету (hot reload) и обновлять таблицы стилей во время работы программы.

Практически невозможно создавать интерфейс пользователя без возможности мгновенно просматривать изменения. Поэтому важной частью любого фреймворка UI является «горячая» перезагрузка кода или некая разновидность конструктора UI.

У JavaFX (и у самой JVM) есть несколько вариантов решения этой проблемы.

SceneBuilder

Первое из них — это SceneBuilder, визуальный конструктор UI, который позволяет создавать FXML, просто перетаскивая компоненты UI.


Его можно интегрировать в любые Java IDE, что упрощает создание новых видов (экранов).

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

Если вы так сделаете, а потом откроете вид в SceneBuilder, он по-прежнему будет нормально работать, так что можно поочерёдно редактировать код вручную или в SceneBuilder — и просматривать результат.

ScenicView

Как только у вас готов базовый дизайн, можно запустить ScenicView для просмотра и редактирования графа сцены при работающем приложении.

Представьте это как эквивалент инструментов разработчика в браузере.


Для запуска ScenicView со своим приложением просто скачайте jar и передайте параметр -javaagent:/path-to/scenicView.jar в JVM.

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

Горячая перезагрузка кода JVM

Если хотите изменить код приложения, который напрямую не связан с UI, то длоя этого подходит отладчик Java с горячей заменой кода во время работы приложения. Базовая поддержка перезагрузки кода имеется в Oracle JVM и HotSpot. Думаю, что она есть и в OpenJDK JVM.

Однако базовая поддержка этой функции очень ограничена: вам позволено менять только реализацию уже существующих методов.

Зато есть расширение HotSpot VM под названием DCEVM (Dynamic Code Evolution VM) с гораздо большей функциональностью: добавление/удаление методов и полей, добавление/удаление классов, изменение значения итоговых переменных и прочее. В другой статье я уже писал о нём и о других способах перезагрузки кода в работающей JVM.

Я использовал это расширение при разработке LogFX — и оно отлично себя проявило. Если не закрыть и заново не открыть окно, то вид не меняется автоматически при перезагрузке кода, но это не такая большая проблема, если менять что-то в Stage… к тому же, если вы хотите изменить только компонент UI, то можно использовать ScenicView или просто вернуться в ScenicBuilder и как угодно поменять дизайн.

Для запуска DCEVM нужно только установить его и сверить номера версий расширения и JVM. После этого приложение запускается с отладчиком — и каждый раз после перекомпиляции в IDE новый код автоматически подгрузится в работающую программу.

В IntelliJ после изменения класса и перекомпиляции вы увидите нечто подобное (Cmd+F9 на «маке»):


Обновление таблиц стилей

JavaFX не обновляет автоматически таблицы стилей. Но для LogFX я хотел сделать такую возможность, чтобы можно было изменять стили — и немедленно наблюдать эффект в приложении.

Поскольку LogFX — программа для просмотра логов, у неё довольно продвинутый FileChangeWatcher , который подходит для просмотра стилей и их перезагрузки.

Но он работает только если стили поставляются из отдельного файла, а не из самого приложения (из jar).

Поскольку я уже разрешил пользователям устанавливать произвольный файл с таблицами стилей, то это не стало проблемой.

Я использовал эту функцию в процессе разработки, и она очень впечатляет. Если вам нужна такая же фича, можно написать собственный диспетчер файлов или скопировать мой (в конце концов, он с открытыми исходниками).

Для выбора таблицы стилей как файла (в отличие от ресурса jar), к сожалению, придётся использовать разный синтаксис под Unix/Mac и Windows. Вот такой метод я применил, чтобы решить проблему:


Это работает на Mac, Windows и Linux Mint. Но это только первая из двух проблем, которые возникают на разных ОС (вторая — то, что не отображается иконка в системном трее на Mac, хотя есть уродливое обходное решение этой проблемы). В остальном JavaFX всё абстрагирует довольно хорошо по большей части.

Наконец, когда диспетчер определил изменение в файле с таблицами стилей, вы можете обновить стиль, просто удалив его и немедленно добавив обратно:


Такой метод неплохо работает. Но если вы не хотите сами его писать, то ScenicView тоже умеет отслеживать таблицы стилей во внешних файлах (но не внутри jar), и TornadoFX тоже это поддерживает, так что здесь есть варианты.

Создание приложения на JavaFX стало довольно приятным опытом. У меня имелась некоторая практика написания JavaFX-приложений для работы несколько лет назад (когда JavaFX находился на ранней стадии развития, что теперь уже осталось в прошлом), так что у меня определённо была некая фора… но я также работал как веб-разработчик и теперь не могу поверить, что кто-то предпочтёт использовать веб-стек вместо такой вменяемой среды как JVM.

Созданное приложение LogFX, на мой взгляд, работает очень хорошо, и оно достигло поставленных целей по скорости работы и быстрому отклику, и в то же время оно хорошо выглядит на всех операционных системах без внесения изменений. Пожалуйста, посмотрите сами и выскажите свой мнение:

Хотя это полностью функциональное приложение, файл jar весит всего 303 килобайта. Это 0,3 МБ, включая несколько картинок и файл шрифта TTF, и ещё несколько файлов HTML и CSS, помимо файлов классов Java!

Конечно, приложение не включает саму виртуальную машину JVM, но JVM не является частью программы и может использоваться для многих приложений! В Java 9 вы можете вообще создавать нативные исполняемые файлы, включая в них только необходимые части JVM, так что если вашим пользователям не нравится простой jar, то упакуйте его как нативное приложение, как я показывал в предыдущей статье (небольшое нативное приложение JVM займёт примерно 35 МБ или 21 МБ после оптимизации).

Для работы LogFX требуется около 50 МБ RAM (не для самого приложения, а в основном для JavaFX). В этом можно убедиться, запустив программу такой командой:

java -Xmx50m -jar logfx.jar

Это кардинально отличается от приложений Electron, которые обычно жрут 200 МБ уже в момент запуска.

JavaFX не идеальна и есть много областей, которые всё ещё нуждаются в улучшении. Одна из них — распространение и автоматическое обновление программ. Текущее решение, JNLP и Java WebStart, кажется слабо реализованным, хотя имеются альтернативы от сообщества, такие как Getdown и FxLauncher, а если вы хотите правильный нативный инсталлятор, то имеется и коммерческое решение Install4J (кстати, у Install4J есть бесплатные лицензии для проектов open source).

Осталось много вещей насчёт JavaFX, которые у меня не нашлось времени упомянуть в этой и так уже длинной статье, но некоторые из них, я считаю, достойны дополнительного изучения, если вам интересно:

Одним из самых популярных и востребованных языков программирования считается Java. Давайте посмотрим, какова структура программ на Java, и напишем свою первую программу на этом языке.

Итак, в первую очередь вам понадобится установить JDK (Java Development Kit) — комплект средств разработки приложений на Java. Это софт от Oracle, включающий в себя: — среду выполнения (Java Runtime Environment); — компилятор (javac); — стандартную библиотеку Java; — примеры, техническую документацию.

Устанавливаем JDK

Чтобы установить Java Development Kit: 1. Переходим по ссылке и загружаем JDK для нужной платформы. 2. Извлекаем архив, запускаем приложение. 3. Выбираем «Development Tool», нажимаем «Next». 4. Настраиваем JDK для своей системы. Если речь идёт Windows: — переходим в папку %ProgramFiles%\Java\%версия установленного jdk%\bin; — нажимаем на свойства файла в папке и копируем путь к нему; — переходим в свойства компьютера, открываем вкладку «Дополнительно»; — нажимаем «Переменные среды…»; — создаём в открывшемся окне новую переменную, называем её Path, в её значение вставляем скопированный ранее путь; — открываем командную строку, набираем javac, дабы удостовериться, что JRE установлен и настроен. Если к команде javac будет выдан список аргументов, то всё ок, можно приступать к написанию программ на Java.

Установка IDE

Установив JDK, не помешает установить и IDE (Integrated Development Environment) – комплекс программных средств, применяемых разработчиками для создания программного обеспечения. Среда разработки IDE позволит вам легко писать, запускать, тестировать и отлаживать Java-код.

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

NetBeans

NetBeans выбирают профессиональные Java-разработчики. Среда предоставляет отличные возможности и инструменты, позволяющие сделать программу кроссплатформенной, а ваш код удобочитаемым. Поддерживается как Java, так и другие языки программирования. Среда бесплатна и имеет много плюсов, вот некоторые из них: — возможность форматирования кода; — простой графический интерфейс; — установка сторонних библиотек и многое другое.

Eclipse

Среда предоставляет впечатляющий интерфейс, который удобен и интуитивно понятен. Скачивается бесплатно, имеет ряд плюсов: — форматирование кода; — поддержка разбиения кода на модули; — перетаскивание (drag-and-drop); — просмотр содержимого библиотек; — простота применения одного и того же кода в различных проектах.

IntelliJ IDEA

Известнейшая IDE для Java, написана на Java. Комплектуется уникальными инструментами, позволяет находить ошибки, упрощает отладку кода и т. д. Многие начинающие программисты используют этот софт для создания своих первых программ на Java.

JCreator

Достаточно продвинутая IDE для Java, которая написана на C++ и считается самой быстрой.

Пишем первую программу на Java. Структура программ на Java

Итак, у вас установлено и настроено всё, что необходимо для работы с Java: JDK, JRE и IDE. Что дальше? Конечно же, надо написать первую программу, чтобы удостовериться, что всё в порядке, код работает, а вы готовы изучать язык. Кроме того, это позволит вам познакомиться с базовой структурой Java-кода (тут стоит учесть, что перед началом изучения Java будет нелишним ознакомиться и с основными принципами ООП (объектно-ориентированного программирования). Что касается структуры программ на Java, то её можно представить следующим образом:

javas1_1-20219-9a172c.jpg

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

Перед написанием первой программы, нужно создать проект, а в проекте — файл, где будет содержаться код. Вот, как это выглядит на IDE Eclipse (в других IDE процесс не сильно отличается): — сверху выбираем «File», наводим курсор на «New», в появившемся меню выбираем «Java Project»; — появится окно, где вводим имя проекта и прочие необходимые настройки (в первый раз можно оставить как есть), нажимаем «Next». Проект создан! — создаём в проекте класс, где будем писать первую программу. Для этого щёлкаем правой кнопкой мыши по своему проекту (он должен появиться справа), выбираем «New» → «Class» и присваиваем новому классу имя (в нашем примере – это First). Останется лишь нажать «Finish».

Вот мы и добрались до момента написания первой программы на Java. Не будем ломать традицию и напишем программу, выводящую на экран «Hello, world!».

Поздравляем, вы написали первую программу на Java, поэтому готовы к тому, чтобы начать погружаться в увлекательный мир Java-программирования! И делать это лучше с OTUS.

9 сентября 2013 Мария (admin)

В этом уроке мы создадим нашу первую программу на языке Java.
Создание приложения на языке Java состоит из трех следующих шагов:

Создание исходного файла

lesson2_save

Если вы пользуетесь Notepad++ то нужно выбрать Тип файла:Java source file (*.java)

Обратите также внимание на кодировку в которой сохраняете файл. Должно быть выбрано ANSI . В Notepad++ кодировку можно установить в меню Кодировки.

Компиляция исходного файла

Исходный файл с кодом программы создан, теперь перейдем к компиляции. Для компиляции Java предназначен компилятор javac, который входит в состав установленного нами в первом уроке пакета JDK.

Для того, чтобы скомпилировать исходный файл, открываем командную строку. Для этого в меню Windows Пуск в строке поиска вводим команду cmd и жмем Enter. После этого откроется командное окно.

Теперь в нем нужно изменить текущий каталог на тот, в котором находится наш исходный файл (например C:\studyjava\). Для этого вводим следующую команду:

и нажимаем Enter.

После того, как директория изменилась, вводим команду компиляции

После этого, окно командной строки должно выглядеть следующим образом (рис 2.2):

lesson2_compil

То есть, мы не получим никакого подтверждения, о том, что программа скомпилировалась успешно. Однако, в папке с нашим исходным файлом, должен появиться файл HelloWorld.class. Это можно проверить с помощью команды

Эта команда выводит на экран список всех файлов, находящихся в выбранной директории (рис 2.3).

lesson2_dir

Если файл HelloWorld.class присутствует в этом списке, то это значит, что программа скомпилировалась успешно.

Если в коде программы есть ошибка, то компилятор Java при компиляции нам об этом сообщит.

lesson2_error

Запуск программы

Вводим в командном окне:

Рис 2.5.

Еще раз обратите внимание на чувствительность к регистру в Java. Если вы напишете helloworld вместо HelloWorld, то программа запущена не будет, потому что Java попросту не найдет файл с таким именем.

Конечно, для написания, компилирования и запуска программ на языке Java существуют более удобный инструмент, нежели Блокнот и командная строка . Этот так называемая Интегрированная среда обработки IDE. Об этом мы поговорим в следующем уроке.


Категория: Уроки Java

Читайте также: