对java线程的理解

java的线程比较简单,首先分清线程和进程的定义

进程:内存中运行的一个应用程序、

线程:进程中的实体,可以理解为可执行的程序片段

创建线程的分类::创建线程有两种方式,1,通过继承thread类来实现创建一个线程,2.通过实现runnable接口来实现创建一个线程类,

运行线程的分类::运行线程有两中方式,1,若是继承thread类的直接调用thread类中的start()方法来运行线程  。2 若是实现runnable接口。先实例化一个thread对象,实现了runnable接口的类作为thread参数传给thread,然后通过thread来调用start方法。

具体代码如下

第一种方式:::

/**
  * 创建一个线程,通过继承thread方式来创建
  * @author Administrator
  *
  */
 
public   class   CreateThread1  extends   Thread{
     public   void   run(){
         for ( int   i =  0 ;i< 100 ;i++){
             System.out.println( "继承thread类线程::" +i);
         }
     }
     public   static   void   main(String[] args) {
         CreateThread1 thread1 =  new   CreateThread1();
         /**
          * 启动线程的方式,java中的main函数如果调用其他的方法的时候首先是会先把调用的函数走完之后再回来接着走下面的程序,但是如果main函数中调用了线程的方法
          * 的时候就是先执行一会线程,又接着执行一会下面的程序,是这样交叉着来执行的,
          */
         thread1.start();
         for ( int   i =  0 ;i< 100 ;i++){
             System.out.println( "进程运行:::" +i);
         }
     }
 
}
第二种方式:::

/**
  * 创建线程的第二种方式::(实现runnable接口)
  *
  * @author Administrator
  *
  */
public   class   CreateThread2  implements   Runnable{
 
     public   void   run() {
         for ( int   i =  0 ;i< 100 ;i++){
             System.out.println( "实现runnable接口的线程:::" +i);
         }
 
 
     }
     public   static   void   main(String[] args) {
 
         CreateThread2 thread2 =  new   CreateThread2();
         //因为thread2是继承了runnable接口,不能直接调用start方法,必须要先实例化一个thread线程,同时将实现了runnable的线程作为参数传给新创建的实例thread
         //然后通过新创建的线程来调用start()方法
         Thread thread =  new   Thread(thread2);
         thread.start();
         for ( int   i =  0 ;i< 100 ;i++){
             System.out.println( "程序运行的线程::" +i);
         }
     }
 
 
 
}

综合比较:实现runnable接口的方式比继承thread类的方式来创建线程要好的多,原因是因为实现接口比较灵活,除了实现这个runnable接口之后我还可以实现其他的接口,当然我可以可以继承某个类,相对于单单只能继承thread类要更加的多可用性



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值