temp implements Runnable{...}
new Thread(new temp()).start();
package TCPUDPThread;
/**
* 创建线程方式一:
* 1.创建:继承Thread+重写run
* 2.启动:创建子类对象+start
*
* 创建线程方式二:
* 1.创建:实现Runnable+重写run
* 2.启动:创建实现类对象+Thread对象+start
*
* 推荐:避免单继承的局限性,优先使用接口
* 方便共享资源
* @author pmc
*
*/
public class ThreadTest2 implements Runnable{
/**
* 线程入口点
*/
@Override
public void run() {
for(int i=0;i<20;i++){
System.out.println("一边听歌"+i);
}
}
public static void main(String[] args) {
// //常见实现类对象
// ThreadTest2 temp=new ThreadTest2();
// //创建代理类对象
// Thread tt=new Thread(temp);
// //启动
// tt.start();
/**
* 三合一,和上面三行一样
*/
new Thread(new ThreadTest2()).start();
for(int i=0;i<20;i++){
System.out.println("一边学习"+i);
}
}
}
本文详细介绍Java中创建和启动线程的两种方法:继承Thread类与实现Runnable接口。通过具体代码示例,展示了如何使用这两种方式来创建并运行线程,强调了优先使用接口以避免单继承限制。
1149

被折叠的 条评论
为什么被折叠?



