多线程的三种创建方法之实现Runnable接口

多线程的三种创建方法之实现Runnable接口

推荐使用Runnable接口,因为java单继承的局限性,方便同一个对象被多个线程使用

实现Runnable

  • 创建MyRunnable类实现Runnable接口
  • 实现run()方法,编写线程执行体
  • 创建线程对象,调用start()方法启动线程

实例

//创建Demo02类实现Runnable接口
public class Demo02 implements Runnable{
    @Override
    //重写run()方法  run()方法线程体
    public void run() {
        for (int i = 0; i < 200; i++) {
            System.out.println("子线程--------"+i);
        }
    }

    public static void main(String[] args) {

        //创建Runnable的实现对象类
        Demo02 demo02 = new Demo02();

        //创建线程对象,通过线程对象来开启我们的线程,代理
//        Thread thread1 = new Thread(demo02);
//       thread1.start();

        new Thread(demo02).start();

        for (int i = 0; i < 200; i++) {
            System.out.println("主线程---------"+i);
        }
    }
}

运行结果 子线程主线程同时进行


主线程---------0
主线程---------1
主线程---------2
子线程--------0
子线程--------1
子线程--------2
子线程--------3
子线程--------4
子线程--------5
子线程--------6
子线程--------7
子线程--------8
子线程--------9
子线程--------10
子线程--------11
子线程--------12
主线程---------3
主线程---------4
主线程---------5
主线程---------6
主线程---------7
主线程---------8
子线程--------13
子线程--------14
主线程---------9
主线程---------10
主线程---------11
主线程---------12
主线程---------13
主线程---------14
主线程---------15
主线程---------16
主线程---------17
主线程---------18
主线程---------19
主线程---------20
主线程---------21
主线程---------22
主线程---------23
主线程---------24
主线程---------25
主线程---------26
主线程---------27
主线程---------28
主线程---------29
主线程---------30
主线程---------31
主线程---------32
主线程---------33
主线程---------34
主线程---------35
主线程---------36
主线程---------37
主线程---------38
主线程---------39
主线程---------40
主线程---------41
主线程---------42
主线程---------43
主线程---------44
主线程---------45
主线程---------46
主线程---------47
主线程---------48
主线程---------49
主线程---------50
主线程---------51
主线程---------52
主线程---------53
主线程---------54
主线程---------55
子线程--------15
子线程--------16
子线程--------17
子线程--------18
子线程--------19
子线程--------20
子线程--------21
子线程--------22
子线程--------23
子线程--------24
子线程--------25
子线程--------26
子线程--------27
子线程--------28
子线程--------29
子线程--------30
子线程--------31
子线程--------32
子线程--------33
子线程--------34
子线程--------35
子线程--------36
子线程--------37
子线程--------38
子线程--------39
子线程--------40
子线程--------41
子线程--------42
子线程--------43
子线程--------44
子线程--------45
子线程--------46
子线程--------47
子线程--------48
子线程--------49
子线程--------50
子线程--------51
子线程--------52
子线程--------53
子线程--------54
主线程---------56
主线程---------57
主线程---------58
子线程--------55
子线程--------56
子线程--------57
子线程--------58
子线程--------59
子线程--------60
子线程--------61
子线程--------62
子线程--------63
子线程--------64
子线程--------65
子线程--------66
子线程--------67
子线程--------68
子线程--------69
子线程--------70
子线程--------71
子线程--------72
子线程--------73
子线程--------74
子线程--------75
子线程--------76
子线程--------77
子线程--------78
子线程--------79
子线程--------80
子线程--------81
子线程--------82
子线程--------83
子线程--------84
子线程--------85
子线程--------86
子线程--------87
子线程--------88
子线程--------89
子线程--------90
子线程--------91
子线程--------92
子线程--------93
子线程--------94
子线程--------95
子线程--------96
主线程---------59
主线程---------60
主线程---------61
主线程---------62
主线程---------63
主线程---------64
主线程---------65
主线程---------66
主线程---------67
主线程---------68
主线程---------69
主线程---------70
主线程---------71
主线程---------72
主线程---------73
主线程---------74
主线程---------75
主线程---------76
主线程---------77
主线程---------78
主线程---------79
主线程---------80
主线程---------81
主线程---------82
主线程---------83
子线程--------97
子线程--------98
子线程--------99
子线程--------100
子线程--------101
子线程--------102
子线程--------103
子线程--------104
子线程--------105
子线程--------106
子线程--------107
子线程--------108
子线程--------109
子线程--------110
子线程--------111
子线程--------112
子线程--------113
子线程--------114
子线程--------115
子线程--------116
主线程---------84
主线程---------85
主线程---------86
主线程---------87
主线程---------88
主线程---------89
主线程---------90
主线程---------91
主线程---------92
主线程---------93
主线程---------94
主线程---------95
主线程---------96
主线程---------97
主线程---------98
主线程---------99
主线程---------100
子线程--------117
子线程--------118
子线程--------119
子线程--------120
子线程--------121
子线程--------122
子线程--------123
子线程--------124
子线程--------125
主线程---------101
主线程---------102
主线程---------103
主线程---------104
主线程---------105
主线程---------106
主线程---------107
主线程---------108
主线程---------109
主线程---------110
主线程---------111
主线程---------112
主线程---------113
主线程---------114
主线程---------115
主线程---------116
主线程---------117
子线程--------126
子线程--------127
子线程--------128
子线程--------129
主线程---------118
主线程---------119
主线程---------120
主线程---------121
主线程---------122
主线程---------123
主线程---------124
主线程---------125
主线程---------126
主线程---------127
主线程---------128
主线程---------129
主线程---------130
主线程---------131
主线程---------132
主线程---------133
主线程---------134
主线程---------135
主线程---------136
主线程---------137
主线程---------138
主线程---------139
主线程---------140
主线程---------141
主线程---------142
主线程---------143
主线程---------144
主线程---------145
主线程---------146
主线程---------147
主线程---------148
主线程---------149
主线程---------150
主线程---------151
主线程---------152
主线程---------153
主线程---------154
主线程---------155
主线程---------156
主线程---------157
主线程---------158
主线程---------159
主线程---------160
主线程---------161
主线程---------162
主线程---------163
主线程---------164
主线程---------165
主线程---------166
主线程---------167
主线程---------168
主线程---------169
主线程---------170
主线程---------171
主线程---------172
主线程---------173
主线程---------174
主线程---------175
主线程---------176
主线程---------177
主线程---------178
主线程---------179
主线程---------180
主线程---------181
主线程---------182
主线程---------183
主线程---------184
主线程---------185
主线程---------186
主线程---------187
主线程---------188
主线程---------189
主线程---------190
主线程---------191
主线程---------192
主线程---------193
主线程---------194
主线程---------195
主线程---------196
主线程---------197
主线程---------198
主线程---------199
子线程--------130
子线程--------131
子线程--------132
子线程--------133
子线程--------134
子线程--------135
子线程--------136
子线程--------137
子线程--------138
子线程--------139
子线程--------140
子线程--------141
子线程--------142
子线程--------143
子线程--------144
子线程--------145
子线程--------146
子线程--------147
子线程--------148
子线程--------149
子线程--------150
子线程--------151
子线程--------152
子线程--------153
子线程--------154
子线程--------155
子线程--------156
子线程--------157
子线程--------158
子线程--------159
子线程--------160
子线程--------161
子线程--------162
子线程--------163
子线程--------164
子线程--------165
子线程--------166
子线程--------167
子线程--------168
子线程--------169
子线程--------170
子线程--------171
子线程--------172
子线程--------173
子线程--------174
子线程--------175
子线程--------176
子线程--------177
子线程--------178
子线程--------179
子线程--------180
子线程--------181
子线程--------182
子线程--------183
子线程--------184
子线程--------185
子线程--------186
子线程--------187
子线程--------188
子线程--------189
子线程--------190
子线程--------191
子线程--------192
子线程--------193
子线程--------194
子线程--------195
子线程--------196
子线程--------197
子线程--------198
子线程--------199


上一篇:线程常见问题


下一篇:多线程05/线程的创建和启动2:实现Runnable接口