简答题实现runnable接口创建线程并在线程内提示线程名称等相关信息?

作者&投稿:明翰 (若有异议请与网页底部的电邮联系)
~

实现Runnable接口创建线程的步骤如下:

  • 1.定义一个类,实现Runnable接口。


public class MyRunnable implements Runnable {

// 线程执行体

@Override

public void run() {

// 提示线程名称等相关信息

System.out.println("线程名称:" + Thread.currentThread().getName());

System.out.println("线程ID:" + Thread.currentThread().getId());

System.out.println("线程状态:" + Thread.currentThread().getState());

}

}


2、创建Runnable接口实现类的实例。

MyRunnable runnable = new MyRunnable();

3、创建Thread类的实例,并将Runnable接口实现类的实例作为参数传递给Thread类的构造方法。

Thread thread = new Thread(runnable);

4、调用Thread类的start()方法启动线程。

thread.start();


在线程内提示线程名称等相关信息,可以在Runnable接口实现类的run()方法中使用Thread类的currentThread()方法来获取当前线程的信息,然后通过getName()、getId()和getState()方法来获取线程名称、线程ID和线程状态,并打印到控制台。

public class Main {    public static void main(String[] args) {      

// 创建Runnable接口实现类的实例
       

MyRunnable runnable = new MyRunnable();       

// 创建Thread类的实例,并将Runnable接口实现类的实例作为参数传递给Thread类的构造方法 

Thread thread = new Thread(runnable); 

// 调用Thread类的start()方法启动线程 

thread.start();
}
}

class MyRunnable implements Runnable { 

// 线程执行体 

@Override
public void run() { 

// 提示线程名称等相关信息 

System.out.println("线程名称:" + Thread.currentThread().getName());
System.out.println("线程ID:" + Thread.currentThread().getId()); 

System.out.println("线程状态:" + Thread.currentThread().getState()); 

}

}



要使用Runnable接口创建线程,首先需要实现Runnable接口并重写run()方法。在run()方法中,可以添加希望由线程执行的代码。

下面是一个示例

要使用此Runnable对象创建线程,首先需要创建MyRunnableThread类的实例,然后将此实例传递给thread类构造函数,如下所示:

然后可以通过调用thread对象上的start()方法启动线程,如下所示:

这将创建一个新线程,并在此线程中运行MyRunnableThread类中的run()方法。此run()方法将把线程的名称打印到控制台。




西峰区14729751333: 怎样使用Runnable接口创建线程?
谢之注射: 实现Runnable接口的类必须使用Thread类的实例才能创建线程.通过Runnable接口创建线程分为两步: 1. 将实现Runnable接口的类实例化. 2. 建立一个Thread对象,...

西峰区14729751333: java实现Runnable接口的方式输出10个数字0~10 -
谢之注射: 1.public class MyThread implements Runnable 2.{ 3.int count= 1, number; 4.public MyThread(int num) 5.{ 6.numnumber = num; 7.System.out.println("创建线程 " + number); 8.} 9.public void run() 10.{ 11.while(true) 12.{ 13.System....

西峰区14729751333: Java中,通过实现Runnable接口来创建进程时,没有继承Thread类,为什么却可以创建Thread类对象 -
谢之注射: 仔细看API里面的介绍:1,进入API找到Thread类里面的start()方法,里面介绍到: 使该线程开始执行;Java 虚拟机调用该线程的 run 方法.2,进入API找到Thread类里面的run()方法,里面介绍到: 如果该线程是使用独立的Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回.

西峰区14729751333: 编写一个实现Runnable接口的类MyRunnable. -
谢之注射: public MyRunnable implements Runnable{ public static void main(String[] args) { Thread t1 = new Thread(new MyRunnable()); t1.run(); } public void run() { System.out.println("进程启动!"); } }

西峰区14729751333: 如何在java语音中通过实现Runnable接口的方法定义线程的实现步骤 -
谢之注射: class MyRunnable implements Runnable{ public void run() { System.out.println("通过实现Runable接口方式创建线程"); }}public class ThreadTest2{ public static void main(String[] args) { MyRunnable mr=new MyRunnable(); Thread thread=new Thread(mr); thread.start(); }}

西峰区14729751333: java中Runable 接口的实现过程问题 希望讲解精辟易懂 -
谢之注射: Thread对象中存放着一个Runnable的成员,当你用new Thread(Runnable r)的构造函数来构造的时候,这个成员会被赋值成r 而Thread自己的run方法大致是这样的 if(r!=null){ r.run(); } 因此如果用上述的构造方法,这个线程start的时候就会运行传入的r里面的run方法了.而因为Thread本身也是一个Runnable,所以threadC=new Thread(threadA)的话就会给threadC里面的Runnable成员赋值成threadA,在threadC启动的时候运行的就是 threadA.run() 了

西峰区14729751333: 实现Runnable接口定义线程类,计算并输出1~1000内的所有素数,实现Runnable接口定义线程类D,计算并输出1000
谢之注射: 第一步:编写【质数月】定位1~1000内的所有质数源数. 第二步:应用【个位数是1 3 7 9】的准确判断质数的方法编写程序. 第三步:对照质数表检测,包你服气.

西峰区14729751333: eclipse怎么构造一个实现Runnable接口的类? -
谢之注射: package mythread; public class MyRunnable implements Runnable {public void run(){System.out.println(Thread.currentThread().getName());}public static void main(String[] args){MyRunnable t1 = new MyRunnable();MyRunnable t2 = new ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网