Точка входа для JAVA-приложений: основной (), init (), или выполненный ()?

38
задан Rafael Gorski 3 April 2019 в 13:41
поделиться

4 ответа

Это - специфический вопрос, потому что он, как предполагается, не вопрос выбора.

при запуске JVM Вы определяете класс для выполнения, и это main() из этого класса, где программа запускается.

init(), я предполагаю, что Вы имеете в виду метод JApplet. Когда апплет запускается в браузере, init(), метод указанного апплета выполняется как первостепенная задача.

run(), я предполагаю, что Вы имеете в виду метод Выполнимых. Это - метод, вызванный, когда новая дискуссия начата.

  • основной: программа запускается
  • init: апплет запускается
  • выполненный: поток запускается

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

74
ответ дан No Idea For Name 27 November 2019 в 03:17
поделиться

main метод является точкой входа JAVA-приложения.

SpecificallyгЂЃwhen виртуальной машине Java говорят запустить приложение путем определения его класса (при помощи java средство запуска приложения), это будет искать main метод с подписью public static void main(String[]).

От Sun java страница команды:

инструмент java запускает JAVA-приложение. Это делает это путем запуска среды выполнения Java, загрузки указанного класса и вызова что основное класса метод.

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

public static void main(String args[])

Для дополнительных ресурсов о том, как JAVA-приложение выполняется, обратитесь к следующим источникам:

  1. Глава 12: Выполнение от Спецификация языка Java, Третья Глава 5 Выпуска .
  2. : Соединение, Загрузка, Инициализируя от Спецификации виртуальной машины Java, Второй Выпуск .
  3. Более внимательное рассмотрение "Привет Мирового" Приложения от Учебные руководства .
  4. по Java
<час>

run метод являются точкой входа для нового Thread или класс, реализовывая Runnable интерфейс. Это не называет Java Машиной Virutal, когда это запущено эти java команда.

Как Thread или Runnable самостоятельно не может быть выполнен непосредственно виртуальной машиной Java, таким образом, она должна быть вызвана Thread.start() метод. Это может быть выполнено путем инстанцирования Thread и вызова start метод в main метод приложения:

public class MyRunnable implements Runnable
{
    public void run()
    {
        System.out.println("Hello World!");
    }

    public static void main(String[] args)
    {
        new Thread(new MyRunnable()).start();
    }
}

Для получения дополнительной информации и пример того, как запустить подкласс [1 118] или класс, реализовав Runnable, см. Определять и Запускать Поток с Учебных руководств по Java.

<час>

init метод является первым методом, названным в Апплет или JApplet.

, Когда апплет будет загружен плагином Java браузера или средством просмотра апплета, это будет сначала звонить Applet.init метод. Любые инициализации, которые требуются, чтобы использовать апплет, должны быть выполнены здесь. После init метод завершен, start, метод называют.

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

См. также: , Как Сделать Апплеты из Учебного руководства по Java.

17
ответ дан coobird 27 November 2019 в 03:17
поделиться

Java имеет специальный статический метод:

public static void main(String[] args) { ... }

, который выполняется в классе, когда класс запускается с командной строки Java:

$ java Class

выполнился бы было, сказано в методе в классе "Класс", если это существовало.

public void run() { ... }

требуется интерфейсом Runnable или наследован от класса Потока при создании новых потоков.

3
ответ дан Matthew Schinckel 27 November 2019 в 03:17
поделиться

main() метод является точкой входа для JAVA-приложения. run() обычно используется для новых потоков или задач.

, Где Вы писали run() метод, какое приложение Вы пишете (например, Swing, AWT, консоль и т.д.) и какова Ваша среда разработки?

2
ответ дан Jon Skeet 27 November 2019 в 03:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: