Запускаемый интерфейс в Java: реализация, шаги и ошибки

Опубликовано: 2021-05-02

Оглавление

Введение

Выполняемый интерфейс в Java — это интерфейс, экземпляры которого могут выполняться как потоки. При работе с потоками исполняемый интерфейс действует как основной элемент языка программирования Java. Классы Java, созданные для запуска потоков, должны реализовывать этот интерфейс. Эта статья даст вам глубокое понимание исполняемого интерфейса в Java и процесса реализации.

Что такое работающий интерфейс в Java?

Выполняемый интерфейс — это интерфейс, содержащий один метод. Программа Java определяет этот единственный метод в пакете java.lang и вызывает его при выполнении класса потока. Он предоставляет шаблон для объектов, которые класс может реализовать с помощью потоков. Вы можете реализовать исполняемый интерфейс на Java одним из следующих способов:

  • Использование потока подкласса
  • Переопределение метода run()

Java не допускает множественного наследования в программе. Вы можете расширить только один класс, и когда вы расширяете класс потока, он потребляет больше памяти, времени вычислений и других ресурсов. Следовательно, это добавляет накладные расходы на использование дополнительных методов. Из двух вышеперечисленных вариантов лучше использовать работающий интерфейс для создания потока. Для этого вы должны предоставить реализацию метода run().

Шаги для создания потока с использованием интерфейса Runnable в Java

Выполните следующие шаги для создания потока с помощью исполняемого интерфейса в Java .

  1. Создайте класс потока, который будет реализовывать работающий интерфейс.
  2. В классе потоков напишите функцию для переопределения метода run().
  3. Создайте экземпляр класса Thread.
  4. Экземпляр потока имеет конструктор, который принимает исполняемый объект. Передайте этот объект в качестве параметра экземпляру потока.
  5. Наконец, вызовите метод запуска экземпляра потока.

Читайте также: Идеи и темы проектов Java

Реализация Runnable интерфейса в Java

Реализация метода run() — самый простой способ создания нового потока. Он действует как отправная точка для создания нового потока. Реализация запускаемого интерфейса использует код внутри метода run() и выполняет его в параллельном потоке. Вы можете вызвать класс, создать новые переменные или вызвать действие в методе run() для реализации интерфейса с возможностью запуска в Java . Программа гарантирует, что поток неактивен до тех пор, пока он не напечатает оператор return в коде.

открытый класс TestRunnableInterface {

public static void main(String[] args) {

System.out.println("Из основного() метода: " + Thread.currentThread().getName());

System.out.println("Реализация исполняемого интерфейса на Java ");

Запускаемый экземпляр = новый Запускаемый() {@Override

публичный недействительный запуск () {

System.out.println("Из метода run(): " + Thread.currentThread().getName());

}

};

System.out.println("Создать новый экземпляр объекта потока.");

Тест потока = новый поток (экземпляр);

System.out.println("Выполнение потока!");

тест.старт();

}

}

Выход

Из основного () метода: основной

Реализация работающего интерфейса на Java

Создайте новый экземпляр объекта потока.

Из метода run(): Thread-0

Ошибки, возникающие при реализации интерфейса Runnable в Java

Метод run() выдает ошибку исключения во время выполнения, когда программа прерывается из-за ошибки синтаксиса или кода. Если виртуальная машина Java не обнаруживает ошибки, то созданный поток обрабатывает исключение, пропущенное JVM. Обработчик исключения печатает исключение и останавливает программу.

импортировать java.io.FileNotFoundException;

открытый класс TestRunnableInterface {

public static void main(String[] args) {

System.out.println("Первичный поток: " + Thread.currentThread().getName());

Тест потока = новый поток (новый TestRunnableInterface(). новый DemoInstance());

тест.старт();

}

частный класс DemoInstance реализует Runnable {

публичный недействительный запуск () {

System.out.println(Thread.currentThread().getName() + «, вызов метода run()!»);

пытаться {

бросить новое исключение FileNotFoundException();

}

catch (демонстрация FileNotFoundException) {

System.out.println("Обнаружена ошибка!");

демо.printStackTrace();

}

}

}

}

Выход

Первичный поток: main

Поток-0, вызывающий метод run()!

Поймал ошибку!

java.io.FileNotFoundException

в TestRunnableInterface$DemoInstance.run(Example.java:21)

на java.lang.Thread.run(Thread.java:748)

Класс TestRunnableInterface в приведенной выше программе не создает исключение FileNotFoundException. Виртуальная машина Java позаботится об исключениях, которые должны быть обработаны классом TestRunnableInstance.

Пример использования интерфейса Runnable в Java

Исполняемый интерфейс в Java используется в сетевом сценарии, когда сервер получает несколько запросов на подключение от клиентов. Запускаемый интерфейс в Java справляется с этим быстро и эффективно, выполняя многопоточное программирование.

Изучайте онлайн -курсы по разработке программного обеспечения в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.

Заключение

Короче говоря, исполняемый интерфейс в Java всегда является лучшим выбором по сравнению с потоком подкласса, когда речь идет о создании потоков в Java. Код, использованный в статье, предназначен только для пояснительных целей. Вы можете изменить утверждения, приведенные в примерах, в соответствии с вашими требованиями. В этой статье мы узнали о runnable-интерфейсе в Java и о том, как можно создать поток, реализуя runnable-интерфейс в Java .

Вы можете попробовать код, чтобы закрепить свои знания конструктора Java . Если вы хотите получить более глубокое понимание Java, ознакомьтесь с программой upGrad Executive PG в курсе Full Stack Development. Этот курс предназначен для работающих профессионалов и предлагает тщательное обучение и помощь в трудоустройстве в ведущих компаниях.

Что такое многопоточность в Java?

Многопоточность — это концепция Java, при которой задачи выполняются одновременно. Это позволяет программе выполнять множество различных задач одновременно, а не ждать завершения одной задачи. Это одна из самых популярных тем Java и Java-разработчиков. Многопоточность — одна из очень мощных функций java. Он эффективно использует ЦП, запуская несколько потоков. В Java есть специальная конструкция, называемая потоком. Поток — это в основном программный процесс, который может выполнять произвольную последовательность инструкций байт-кода Java. Выполнение каждого потока независимо от других потоков. Разработчики могут создать новый поток в любое время, и JVM будет обрабатывать выполнение этого потока. Это помогает в разработке хорошо масштабируемого и отзывчивого приложения.

Что такое работающий интерфейс в Java?

Интерфейс runnable используется для написания приложений, которые могут выполняться в отдельном потоке. Любой класс, реализующий исполняемый интерфейс, называется потоком. Код потока выполняется интерпретатором после запуска потока. Вы можете реализовать работающий интерфейс и создать свою собственную многопоточную программу. Существует два способа реализации этого интерфейса. Первый заключается в использовании подкласса потока. Другой — путем переопределения метода run().

Как на самом деле работает многопоточность?