Как завершить программу в Java
Обновлено: 21.11.2024
Чтобы закрыть Java-программу, нам нужно рассмотреть, какое это Java-приложение?, потому что завершение Java-приложения варьируется между обычной базовой Java-программой и приложением с графическим интерфейсом. Как правило, все Java-программы завершаются автоматически, как только все пользовательские потоки, созданные программой, завершают свое выполнение, включая основной поток.
1. Введение
JVM не ожидает потока демона, поэтому, как только завершится последний пользовательский поток, программа Java завершится. Если вы хотите закрыть или завершить свое Java-приложение до этого, единственным вариантом является использование System.exit(int status) или Runtime.getRuntime().exit() .
Это приводит к тому, что JVM отказывается от всех потоков и немедленно завершает работу. Крючки отключения вызываются, чтобы разрешить некоторую очистку в последнюю минуту, прежде чем JVM фактически завершит работу. System.exit() также принимает параметр состояния int, где ненулевое значение обозначает ненормальное выполнение и результат, возвращаемый командой java вызывающей стороне. В этом руководстве по Java мы увидим пример закрытия как программы Java, так и приложения Java Swing.
Swing — это набор инструментов для виджетов с графическим интерфейсом для Java. Он является частью Oracle Java Foundation Classes (JFC) — API для предоставления графического пользовательского интерфейса (GUI) для программ Java. Swing был разработан, чтобы предоставить более сложный набор компонентов графического интерфейса, чем более ранний набор инструментов Abstract Window Toolkit (AWT). JAVA предоставляет богатый набор библиотек для создания графического пользовательского интерфейса независимо от платформы.
2. Свинг Java
В отличие от AWT, Java Swing предоставляет независимые от платформы и легкие компоненты. Пакет javax.swing предоставляет классы для Java Swing API
2.1 Архитектура MVC
Архитектура Swing API следует свободно основанной архитектуре MVC следующим образом.
- Модель представляет данные компонента.
- Вид представляет собой визуальное представление данных компонента.
- Контроллер принимает данные от пользователя в представлении и отражает изменения в данных Компонента.
- Компонент Swing имеет модель как отдельный элемент, а части представления и контроллера объединены в элементы пользовательского интерфейса. Таким образом, Swing имеет подключаемую архитектуру внешнего вида.
Каждый пользовательский интерфейс учитывает следующие три основных аспекта:
- Элементы пользовательского интерфейса . Это основные визуальные элементы, которые пользователь в конечном итоге видит и с которыми взаимодействует. GWT предоставляет огромный список широко используемых и распространенных элементов, варьирующихся от простых до сложных.
- Макеты. Они определяют, как элементы пользовательского интерфейса должны быть организованы на экране, и обеспечивают окончательный внешний вид графического пользовательского интерфейса.
- Поведение. Это события, которые происходят, когда пользователь взаимодействует с элементами пользовательского интерфейса.
2.2 Функции Swing
- Расширенные элементы управления. Swing предоставляет широкий набор расширенных элементов управления, таких как Tree, TabbedPane, ползунок, палитра цветов, элементы управления таблицами.
- Широкие возможности настройки — элементы управления Swing можно очень легко настроить, поскольку внешний вид не зависит от внутреннего представления.
- Подключаемый внешний вид — графический интерфейс на основе SWING Внешний вид и поведение приложения можно изменить во время выполнения на основе доступных значений.
2.3 Настройка
Необходимое условие
Этот пример разработан для Eclipse, поэтому в системе должна быть установлена совместимая Eclipse IDE.
Нам также необходимо установить инструмент WindowBuilder в Eclipse IDE для простоты работы.
3. Пример закрытия Java-программы с помощью System.exit()
Вот пример кода закрытия Java-программы с помощью вызова метода System.exit(). Помните, что ненулевой аргумент метода exit(), такой как exit(1), означает аварийное завершение приложения Java.
Эта Java-программа сначала создает метод Thread в основном методе и запускает его, который печатает «Пользовательский поток запущен», а затем основной поток приостанавливается на 200 миллисекунд. До тех пор другой пользовательский поток работает и печатает, но как только основной поток просыпается, он завершает программу, вызывая метод exit() класса java.lang.System.
3.2 Как закрыть приложение Java Swing из программы
Приложение Swing в основном использует JFrame в качестве контейнера верхнего уровня, который предоставляет два варианта закрытия приложения Swing GUI из кода. Первый параметр по умолчанию - EXIT_ON_CLOSE, который завершает программу Java Swing GUI, когда вы нажимаете кнопку закрытия в окне JFrame. Другим параметром является DISPOSE_ON_CLOSE, который завершает работу JVM, если последнее отображаемое окно удаляется.
Разница между EXIT_ON_CLOSE и DISPOSE_ON_CLOSE заключается в том, что если у вас запущен не демонический поток, он не будет закрыт в случае DISPOSE_ON_CLOSE , в то время как EXIT_ON_CLOSE завершает работу JVM, даже если пользовательский поток запущен. Запустите приведенный ниже пример, раскомментировав DISPOSE_ON_CLOSE в своей среде IDE, и вы увидите, что пользовательский поток работает даже после нажатия кнопки закрытия. Вот полный пример кода закрытия приложения Swing в Java.
3.3 важных момента для закрытия или прекращения работы Java-приложения
- System.exit() фактически вызывает метод Runtime.getRuntime().exit().
- Ненулевой аргумент функции exit() означает аварийное завершение программы Java.
- Перехватчики завершения работы выполняются до фактического завершения работы Java-программы.
- Существует два варианта закрытия приложения Java Swing: EXIT_ON_CLOSE и DISPOSE_ON_CLOSE .
- DISPOSE_ON_CLOSE не завершает работу JVM, если запущен какой-либо пользовательский поток.
- Вы также можете реализовать прослушиватель окон для реализации механизма закрытия с помощью System.exit() в приложении Swing.
Это все о том, как закрыть или завершить программу Java. Мы также видели пример закрытия приложения Swing в Java и разницу между EXIT_ON_CLOSE и DISPOSE_ON_CLOSE .
Но В этом посте мы увидим, как завершить программу в Java.
Вы можете использовать System.exit(0) для завершения программы в java.
Оглавление
Использование System.exit() для завершения Java-программы
Вы можете использовать метод exit() класса System для завершения Java-программы.
System.exit() заставляет виртуальную машину Java выйти и завершить текущий процесс. Вы можете вызвать System.exit() в любом месте программы, что приведет к завершению работы JVM.
Поскольку System.exit() является статическим методом класса System, компилятор не знает, что он будет делать, поэтому не выдает ошибку недостижимого кода.
Если мы передаем 0 методу System.exit(), это означает, что завершение произошло успешно, и мы передаем это значение в операционную систему.
- exit(0): указывает на успешное завершение Java-программы.
- выход(-1) или выход(1) или выход(любое ненулевое значение): указывает на неудачное завершение программы Java.
Пример демонстрации метода System.exit()
Вот пример:
Как видите, после вызова метода System.exit() после вызова метода System.exit() он не печатался.
Как завершить Java-программу оператором if в Java
Вы можете выйти из программы в Java на основе условия оператора if.
Вот пример.
Как видите, программа завершилась, как только элемент массива стал больше или равен 40 во время итерации. Он не продолжил цикл и не напечатал конец цикла здесь после вызова метода System.exit().
Использование метода return to end current
Если вы просто хотите выйти из текущего метода, вы можете использовать оператор return.
оператор return останавливает выполнение текущего метода и возвращает его вызывающему методу. Это зарезервированное ключевое слово, которое уже известно компилятору.
return может завершить java-программу, если это последняя инструкция внутри основного выполняемого метода класса. Если вы поместите код после оператора return, компилятор выдаст ошибку о недостижимом коде.
Язык программирования Java — это мощный язык программирования. Если вы программист или разработчик, Java является одним из важных и обязательных знаний, которые у вас есть. Честно говоря, вам нужно знать много java. Итак, после серии статей о Java следует статья о том, как завершить программу на Java и как ее завершить.
Давайте узнаем об этом вместе с ArrowHiTech в этой статье ниже!
System.exit() для завершения программы Java
Для тех, кто не знает, как завершить программу на Java, есть много способов сделать это. Во-первых, мы можем использовать метод exit() класса System, честно говоря, это самый популярный способ остановить программу в Java. System.exit() завершает виртуальную машину Java (JVM), которая завершает текущую программу, которую мы запускаем.
Чтобы полностью понять это, ниже приведен простой пример завершения программы на Java, использующей метод System.exit(). Однако обратите внимание, что он принимает целое число, которое является кодом состояния. Затем мы передаем 0 в функцию exit(), что указывает на то, что завершение происходит успешно без каких-либо ошибок. Ненулевой статус, такой как 1 и -1, указывает компилятору завершить программу с какой-либо ошибкой или сообщением.
Кроме того, вы можете видеть, что в приведенном ниже примере на выходе печатается только оператор 1. Это программа завершается после ее выполнения, а оператор 2 никогда не может быть выполнен.
Как завершить программу на Java оператором if в Java
Один из других способов остановить программу Java на основе условия оператора if. Затем следуйте примеру ниже.
10
20
30
Завершение JVM
Итак, как вы видите, программа на Java остановилась, как только элемент массива стал больше или равен 40 во время итерации. Он не продолжил цикл и не напечатал конец цикла здесь после вызова метода System.exit().
Как завершить Java-программу с помощью return
Упомянем еще один способ остановить программу Java, вы можете использовать оператор return.
Операция Retuern останавливает выполнение текущего метода и возвращает его вызывающему методу. Затем это зарезервированное ключевое слово, которое компилятор уже знает. Более того, return может завершить java-программу, если это последний оператор внутри основного метода выполняемого класса. Поэтому, если вы поместите код после оператора return, компилятор выдаст ошибку о недостижимом коде.
Пример 1
открытый класс JavaHelloWorld
public static void main(String[] args)
System.out.println("Перед вызовом Syste.exit()");
возврат;
System.out.println("После вызова Syste.exit()");
В целом, предшествующая Java-программа выдаст ошибку компиляции о недостижимом коде в строке номер 6.
Пример 2: Как завершить программу в Java
Допустим, вы хотите написать метод isPrime для проверки, является ли число простым. Конечно, вы можете вызвать метод isPrime() из основного метода и вернуть значение true или false в зависимости от того, является число простым или нет.
17 Prime: true
равно 27 Prime: false
равно 79 Prime: true
Подведение итогов
В общем, это все о том, как завершить программу в java. Кроме того, мы надеемся, что этот пост окажется для вас полезным. Однако, если у вас остались вопросы о Java или о том, как завершить программу на Java, свяжитесь с нами. ArrowHitech стала одной из ведущих ИТ-аутсорсинговых компаний во Вьетнаме. Мы опытные профессионалы в области электронной коммерции, разработки мобильных приложений, разработки веб-сайтов CMS, а также консультанты по продажам и разработке программного обеспечения.
Краткое руководство по выходу из программы в java. Используйте System.exit() или вернитесь, чтобы закончить и завершить программы Java.
1. Обзор
В этом руководстве мы узнаем, сколько способов завершить программу Java и как завершить выполнение программы в Java.
2. Завершить и завершить программу с помощью System.exit()
Используйте метод System.exit(), чтобы завершить выполнение программы Java. Метод exit() относится к классу System, а метод exit() является статическим.
Метод System.exit() дает JVM инструкции завершить текущую запущенную программу с точки зрения метода exit().
Из приведенного выше кода мы ожидаем, что оператор 3 будет напечатан на консоли из трех операторов System.out.println(). Но он напечатал только первые два.
Потому что System.exit() находится после второго sysout. Когда даже среда выполнения Java находит метод exit(), она просто останавливает выполнение программы в любой момент времени.
Значение0 указывает на выход jvm из программы с успешным завершением без ошибок. Это изящное завершение.
но если вы передадите любое ненулевое значение, это приведет к печати с сообщением об ошибке. Но из версий java 8 или более поздних версий он не показывает никаких сообщений об ошибках, даже если передано ненулевое значение.
3. Конечная программа Java с использованием оператора return
Мы можем использовать операторы возврата из методов или из основной программы, чтобы завершить выполнение текущего метода и продолжить его родитель.
Эта программа не компилируется, так как после оператора return стоит оператор sysout. Это означает, что компилятор обнаруживает, что последняя строка программы никогда не будет выполнена с сообщением об ошибке «Недостижимый код».
4. Конечная программа Java, использующая оператор return с if else
Если условие выполнено, выполните логику и верните "четное число", а из другого условия верните значение "нечетное число".
Читайте также: