天天看点

java 中的多线程 内部类实现 数据共享 和 Runnable实现数据共享

/*

java 中Runnable的好处    可以实现共享一个数据    

在一个类已经从其他类派生的时候 我们不能使用 直接从Thread类派生  那么这时候我们可以通过实现Runnable

接口来实现 

  class Test

 {

    public  static void main(String []args)  throws Exception

     { 

       NewThread nt=new NewThread();

       new Thread(nt).start();

       new Thread(nt).start();     

       while(true)

     {

        System.out.println(Thread.currentThread().getName()+": is run");

     }

  }

class NewThread  implements Runnable

{

   int index=0;

    public    void run()

   {  while(true)

     //  System.out.println(Thread.currentThread().getName()+": is run");;

       System.out.println(Thread.currentThread().getName()+":"+index++);

      }

   }

}

*/

内部类也能实现多线程数据的共享  一般情况下我们是实现Runnable接口

       nt.getThread().start();

       nt.getThread().start();        

class NewThread 

    int index=0;

    private class InnerThread extends Thread   //设置为私有 隐藏 实现细节

   {

  } 

   Thread getThread()

    return new  InnerThread();