欢迎访问宙启技术站
智能推送

Java函数创建新的线程示例。

发布时间:2023-08-09 10:22:18

在Java中创建新的线程有两种常用的方法:继承Thread类和实现Runnable接口。

1. 继承Thread类:

public class MyThread extends Thread {
    @Override
    public void run() {
        // 线程执行的代码
        for (int i = 0; i < 10; i++) {
            System.out.println("Thread 1: " + i);
            try {
                Thread.sleep(1000); // 让线程休眠1秒
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        // 创建新的线程对象
        MyThread myThread = new MyThread();
        // 启动线程
        myThread.start();
    }
}

上述代码中,我们创建了一个名为MyThread的类,该类继承自Thread类。在MyThread类中,我们重写了父类的run()方法,run()方法中定义了线程的具体执行逻辑。在main()方法中,我们创建了一个MyThread对象,然后调用start()方法来启动新的线程。

2. 实现Runnable接口:

public class MyRunnable implements Runnable {
    @Override
    public void run() {
        // 线程执行的代码
        for (int i = 0; i < 10; i++) {
            System.out.println("Thread 2: " + i);
            try {
                Thread.sleep(1000); // 让线程休眠1秒
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        // 创建新的线程对象
        Thread thread = new Thread(new MyRunnable());
        // 启动线程
        thread.start();
    }
}

在上述代码中,我们创建了一个名为MyRunnable的类,该类实现了Runnable接口。在MyRunnable类中,我们需要实现run()方法,该方法中定义了线程的具体执行逻辑。在main()方法中,我们创建了一个Thread对象并将MyRunnable对象作为参数传递给Thread的构造函数,然后调用start()方法来启动新的线程。

这两种创建新线程的方法都是常用的方式。继承Thread类的优点是代码结构简单,但缺点是当需要多重继承时会受限;而实现Runnable接口的优点是可以避免单继承的限制,但需要使用Thread类来包装实现了Runnable接口的对象,稍微复杂一些。根据实际需求选择合适的方法来创建新的线程。