Java 第22天 高级进阶篇 多线程实现Runnable接口 (二.)
写在前言 : 知识是自己的,学习资源是共享的:B站是最好的也是全面滴。Good
1 、现在出去面试,面试官老是会问你一句话Java 怎么样?
不管是大数据岗位还是数据库都会问一句。 回来痛下决心,决定探索下这门语言的精髓,大数据很多框架也都是Java 写的,的确懂一门语言,比较稳妥。路也宽敞!!!不然就和吃饭没筷子,那么尴尬。把每天学习到的 Java知识分享到这里会。直到能自己写个复杂一点Dome得出来。
2、为了监督自己探索这门语言的动力与决心。特此这段话放到前面!!!
3、挑战下自己 到底是笨 还是学不会,还是不想学。 好运
目录:
- 写在前言 : 知识是自己的,学习资源是共享的:B站是最好的也是全面滴。Good
- 1 、现在出去面试,面试官老是会问你一句话Java 怎么样?
- 不管是大数据岗位还是数据库都会问一句。 回来痛下决心,决定探索下这门语言的精髓,大数据很多框架也都是Java 写的,的确懂一门语言,比较稳妥。路也宽敞!!!不然就和吃饭没筷子,那么尴尬。把每天学习到的 Java知识分享到这里会。直到能自己写个复杂一点Dome得出来。
- 2、为了监督自己探索这门语言的动力与决心。特此这段话放到前面!!!
- 3、挑战下自己 到底是笨 还是学不会,还是不想学。 好运
- 创建多线程方式 二 :实现 Runnable 节口 .
- 1、多线程:二种创建 继承方式 VS 实现方式对比:
- 2、在我们开发当中选择的时候,应当优先选择实现 Runnale 接口的方式。
- 3:选择 实现 Runnale 接口的原因:
- **【转载注明出处,还望尊重原创 】**
- **【作者水平有限,如有错误欢迎指正 .】**
创建多线程方式 二 :实现 Runnable 节口 .
package Com.Work_ZQ;
/**
- 创建多线程的方式二:
- 1、创建一个实现Runnable接口的类
- 2、实现runnable 中的抽象方法:run()
- 3、创建实现类的对象
- 4、将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象
- 5、通过Thread 类的对象调用start() 方法
*/
class MyThread2 implements Runnable{
@Override
public void run() {
for (int i=0;i<100;i++){
if (i% 2 ==0){
System.out.println(Thread.currentThread().getName()+":"+i);
}
}
}
}
public class ThreadTest1 {
public static void main(String[] args) {
// 3、创建实现类的对象
MyThread m1 = new MyThread();
Thread t1 = new Thread(m1);
t1.setName(“线程1”);
t1.start();
// 在加入一个线程,遍历100以内的偶数
Thread t2 = new Thread(m1);
t2.setName(“线程2”);
t2.start();
}
}
/**
- 总结
- 实际开发中可能有更复杂的代码实现,需要继承其他的类,所以平时更推荐通过实现接口来实现多线程,
- 也就是通过第二或第三种方式来实现,这样能保持代码灵活和解耦。
*/
1、多线程:二种创建 继承方式 VS 实现方式对比:
2、在我们开发当中选择的时候,应当优先选择实现 Runnale 接口的方式。
3:选择 实现 Runnale 接口的原因:
1、实现的方式没有类的单继承性的局限性。
2、实现的方式更适合处理多个线程共享数据的情况。
3、两种方式都需要重写run () 方法,将线程执行的逻辑放在run()方法当中。
【转载注明出处,还望尊重原创 】