class myThread extends Thread{
时间: 2023-07-20 21:37:32 浏览: 46
这是一个Java中定义线程的基本语法。在这段代码中,我们定义了一个名为“myThread”的类,继承自Thread类。这意味着我们可以使用Thread类中的方法来控制和管理该线程。
为了实现线程的执行逻辑,我们需要重写Thread类中的run()方法。在run()方法中,我们可以编写自己的线程执行逻辑。
例如:
```
class myThread extends Thread {
public void run() {
System.out.println("线程开始执行");
// 这里编写线程的执行逻辑
System.out.println("线程执行完毕");
}
}
```
在上面的示例中,我们重写了run()方法,并在其中输出了一些信息,以表示线程的执行过程。当我们创建一个myThread对象并调用其start()方法时,该线程就开始执行run()方法中定义的逻辑。
相关问题
1.将下图代码保存到该ThreadDemo.java中。查阅API文档等,为代码添加注释。 功能:分别以两种方式创建线程对象 class MyThread extends Thread { public void run() { // System.out.println("线程1运行了。"); } } class MyRunnable implements Runnable {// public void run() { System.out.println("线程2运行了。"); } } public class ThreadDemo { // public static void main(String[] args) { Thread t1 = new MyThread(); // Runnable target = new MyRunnable(); // Thread t2 = new Thread(target); // // 创建线程对象t3(本质上仍是方式2,但使用了Lambda表达式以简化代码) Thread t3 = new Thread(() -> System.out.println("线程3运行了。")); t1.start(); // t2.start(); // t3.start(); // } }
```
// 定义一个继承自Thread类的线程
class MyThread extends Thread {
// 重写Thread类的run方法
public void run() {
// 打印信息
// System.out.println("线程1运行了。");
}
}
// 定义一个实现了Runnable接口的线程
class MyRunnable implements Runnable {
// 实现Runnable接口的run方法
public void run() {
// 打印信息
System.out.println("线程2运行了。");
}
}
// 主类
public class ThreadDemo {
public static void main(String[] args) {
// 创建线程对象t1,该线程是继承自Thread类的线程
Thread t1 = new MyThread();
// 创建线程对象t2,该线程是实现了Runnable接口的线程
Runnable target = new MyRunnable();
Thread t2 = new Thread(target);
// 创建线程对象t3,使用Lambda表达式简化代码
Thread t3 = new Thread(() -> System.out.println("线程3运行了。"));
// 开始运行线程
t1.start();
t2.start();
t3.start();
}
}
```
注释已经添加在代码中了。
class MyThread extends Thread { public static void main(String args[]) { MyThread t = new MyThread(); MyThread s = new MyThread(); t.start(); System.out.print("one."); s.start(); System.out.print("two."); } public void run() { System.out.print("Thread"); } }结果是
结果可能是 "one.Threadtwo.Thread",因为在主线程中,先启动了线程t并打印了"one.",然后启动了线程s并打印了"two."。在两个子线程中,都会打印"Thread",但是它们的执行顺序是不确定的,可能是先打印出t的"Thread",然后是s的"Thread",也可能是先打印出s的"Thread",然后是t的"Thread"。