В Java потоки представлены классом Thread. Создание потоков позволяет выполнять несколько задач одновременно, что ускоряет процесс выполнения программы. В этой статье мы рассмотрим два основных способа создания потоков в Java: наследование от класса Thread и реализация интерфейса Runnable.
Наследование от класса Thread
Для создания потока с помощью наследования нужно создать новый класс, который наследует класс Thread, и переопределить метод run().
Пример создания потока, наследуясь от класса Thread:
class MyThread extends Thread {
@Override
public void run() {
System.out.println("Поток запущен!");
}
}
public class Main {
public static void main(String[] args) {
MyThread myThread = new MyThread();
myThread.start();
System.out.println("Главный поток завершен");
}
}
Реализация интерфейса Runnable
Альтернативный способ создания потока — реализация интерфейса Runnable. В данном случае, вместо наследования от класса Thread, создаем класс, который реализует интерфейс Runnable, и переопределяем метод run().
Пример создания потока, реализуя интерфейс Runnable:
class MyRunnable implements Runnable {
@Override
public void run() {
System.out.println("Поток запущен!");
}
}
public class Main {
public static void main(String[] args) {
Thread myThread = new Thread(new MyRunnable());
myThread.start();
System.out.println("Главный поток завершен");
}
}
В обоих примерах мы создали поток, который выводит сообщение «Поток запущен!» и запускаем его с помощью метода start(). Затем в главном потоке выводим сообщение «Главный поток завершен». В результате, оба сообщения выводятся на экран.
👉 Важно помнить, что для запуска потока нужно вызывать метод start(), а не run(). Метод start() создает новый поток, а затем вызывает run() внутри него.
Теперь вы знаете, как создать потоки в Java с помощью наследования от класса Thread и реализации интерфейса Runnable. Эти два способа являются основными, и выбор между ними зависит от предпочтений разработчика и конкретных требований проекта.
Хотите углубить свои знания в Java-разработке и изучить множество других тем? Рекомендуем присоединиться к нашей онлайн-школе, где вы получите все необходимые навыки для работы в сфере Java-разработки.
Перейти в телеграм, чтобы получить результаты теста



Забрать
Добавить комментарий