java匿名内部类 继承_Java中 实现多线程成的三种方式(继承,实现,匿名内部类)...

Java中 实现多线程成的三种方式(继承,实现,匿名内部类)

/**  第一种方式:继承Thread类

*            1. 定义一个类,然后让该类继承Thread类

*            2. 重写run方法

*            3. 创建定义的这个类的对象

*            4. 启动线程

*/

//继承Thread类

public class MyThread extends Thread{

public MyThread() {}

public MyThread(String name) {

super(name);

}

//run方法中封装的应该是要被线程执行的代码 ,run方法中代码的原则,一般存方的都是比较耗时的代码

public void run (){

for (int i = 0; i < 200; i++) {

System.out.println(Thread.currentThread().getName() + "---" + i);

}

}

}

//测试方法

private static void Test() {

// 创建对象

MyThread mt1 = new MyThread();

MyThread mt2 = new MyThread();

//启动线程

// public void start()使该线程开始执行;Java 虚拟机调用该线程的 run 方法。

mt1.start();

//mt1.start();// 线程的启动只能是一次

mt2.start();

}

------------------------------------------------------------------------------------------------------------

/**  第二种方式:实现Runnable接口

*    (1): 创建一个类,让该类实现Runnable接口

*    (2): 重写run方法

*    (3): 创建该类的对象

*    (4): 创建Thread类的对象,然后把3中的对象作为参数传递给Thread

*    (5): 启动线程

*/

//实现Runnable接口

public class MyThread2 implements Runnable {

public MyThread2() {

super();

}

public void run() {

for(int x = 0 ; x < 200 ; x++){

System.out.println(Thread.currentThread().getName() + "---" + x);

}

}

}

//测试方法

private static void Test2() {

// 创建MyThread的对象

MyThread2 mt = new MyThread2();

// 创建Thread类的对象,然后把3中的对象作为参数传递给Thread

// public Thread(Runnable target)

Thread t1 = new Thread(mt,"张飞");

Thread t2 = new Thread(mt,"关羽");

Thread t3 = new Thread(mt,"刘备");

// 启动线程

t1.start() ;

t2.start() ;

t3.start() ;

}

------------------------------------------------------------------------------------------------------------

/**  第三种方式:使用匿名内部类的方式实现

*    new 类名/接口名() {

*      方法重写 ;

*    } ;

*/

//测试方法

//匿名内部类

private static void Test3() {

new Thread() {

public void run() {

System.out.println("线程执行了。。。。。。。");

}

}.start();

}

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值